/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_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:54:29,462 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:54:29,463 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:54:29,493 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:54:29,494 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:54:29,494 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:54:29,495 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:54:29,496 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:54:29,498 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:54:29,506 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:54:29,509 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:54:29,511 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:54:29,511 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:54:29,515 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:54:29,516 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:54:29,518 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:54:29,518 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:54:29,519 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:54:29,524 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:54:29,527 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:54:29,527 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:54:29,529 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:54:29,529 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:54:29,531 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:54:29,532 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:54:29,536 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:54:29,536 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:54:29,536 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:54:29,537 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:54:29,537 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:54:29,537 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:54:29,538 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:54:29,538 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:54:29,538 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:54:29,539 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:54:29,539 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:54:29,540 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:54:29,540 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:54:29,540 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:54:29,540 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:54:29,541 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:54:29,541 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:54:29,542 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:54:29,547 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:54:29,547 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:54:29,548 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:54:29,548 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:54:29,549 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:54:29,549 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:54:29,549 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:54:29,550 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:54:29,550 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:54:29,550 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:54:29,550 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:54:29,550 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:54:29,728 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:54:29,756 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:54:29,758 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:54:29,758 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:54:29,759 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:54:29,760 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound50.c [2022-04-28 05:54:29,810 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a00c536e/d8d6ad097b1d49fe950217a9681a20b7/FLAG9d036cef8 [2022-04-28 05:54:30,086 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:54:30,086 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound50.c [2022-04-28 05:54:30,090 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a00c536e/d8d6ad097b1d49fe950217a9681a20b7/FLAG9d036cef8 [2022-04-28 05:54:30,518 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a00c536e/d8d6ad097b1d49fe950217a9681a20b7 [2022-04-28 05:54:30,519 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:54:30,520 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:54:30,522 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:54:30,522 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:54:30,525 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:54:30,525 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,526 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3383feb4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30, skipping insertion in model container [2022-04-28 05:54:30,526 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,530 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:54:30,540 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:54:30,681 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound50.c[490,503] [2022-04-28 05:54:30,712 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:54:30,717 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:54:30,739 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound50.c[490,503] [2022-04-28 05:54:30,759 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:54:30,766 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:54:30,766 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30 WrapperNode [2022-04-28 05:54:30,767 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:54:30,773 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:54:30,773 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:54:30,773 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:54:30,779 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,779 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,785 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,785 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,798 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,803 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,806 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,808 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:54:30,809 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:54:30,809 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:54:30,809 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:54:30,812 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (1/1) ... [2022-04-28 05:54:30,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:54:30,824 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:30,833 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:54:30,852 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:54:30,861 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:54:30,861 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:54:30,861 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:54:30,861 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:54:30,862 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:54:30,862 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:54:30,862 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:54:30,862 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:54:30,862 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:54:30,862 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:54:30,863 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:54:30,863 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:54:30,863 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:54:30,864 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:54:30,910 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:54:30,912 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:54:31,034 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:54:31,039 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:54:31,039 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:54:31,040 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:54:31 BoogieIcfgContainer [2022-04-28 05:54:31,040 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:54:31,041 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:54:31,041 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:54:31,043 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:54:31,043 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:54:30" (1/3) ... [2022-04-28 05:54:31,044 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@15862e33 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:54:31, skipping insertion in model container [2022-04-28 05:54:31,044 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:54:30" (2/3) ... [2022-04-28 05:54:31,044 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@15862e33 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:54:31, skipping insertion in model container [2022-04-28 05:54:31,044 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:54:31" (3/3) ... [2022-04-28 05:54:31,045 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_valuebound50.c [2022-04-28 05:54:31,053 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:54:31,053 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:54:31,078 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:54:31,082 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@5611fd60, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6d686f1a [2022-04-28 05:54:31,082 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:54:31,087 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:54:31,093 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 05:54:31,093 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:31,094 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:54:31,094 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:31,097 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:31,097 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 1 times [2022-04-28 05:54:31,102 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:31,102 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [766601505] [2022-04-28 05:54:31,108 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:31,108 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 2 times [2022-04-28 05:54:31,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:31,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1942905630] [2022-04-28 05:54:31,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:31,113 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:31,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,246 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:54:31,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,265 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:54:31,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:54:31,265 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-28 05:54:31,266 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:54:31,267 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,280 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,280 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,280 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,281 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:54:31,281 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 05:54:31,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,286 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,287 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,287 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:54:31,287 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 05:54:31,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,295 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,296 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,296 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-28 05:54:31,296 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 05:54:31,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,311 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,312 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,313 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-28 05:54:31,314 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:54:31,314 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:54:31,314 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:54:31,315 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-28 05:54:31,315 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-28 05:54:31,315 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:54:31,315 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-28 05:54:31,316 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,316 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,316 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,316 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:54:31,317 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:54:31,317 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-28 05:54:31,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,317 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,318 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:54:31,318 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:54:31,318 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,318 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,318 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,319 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-28 05:54:31,319 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:54:31,319 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:54:31,319 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:54:31,319 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:54:31,320 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-28 05:54:31,320 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:54:31,320 INFO L290 TraceCheckUtils]: 28: Hoare triple {44#false} assume false; {44#false} is VALID [2022-04-28 05:54:31,320 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:54:31,320 INFO L290 TraceCheckUtils]: 30: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:54:31,320 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:54:31,321 INFO L290 TraceCheckUtils]: 32: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:54:31,321 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:54:31,321 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:31,322 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1942905630] [2022-04-28 05:54:31,322 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1942905630] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:31,322 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:31,322 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:54:31,324 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:31,324 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [766601505] [2022-04-28 05:54:31,324 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [766601505] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:31,325 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:31,325 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:54:31,325 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1027176539] [2022-04-28 05:54:31,325 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:31,328 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:54:31,329 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:31,331 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:54:31,369 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:54:31,369 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:54:31,370 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:31,382 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:54:31,382 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:54:31,384 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:54:31,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:31,522 INFO L93 Difference]: Finished difference Result 73 states and 115 transitions. [2022-04-28 05:54:31,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:54:31,522 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:54:31,522 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:31,523 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:54:31,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-28 05:54:31,542 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:54:31,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-28 05:54:31,572 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 115 transitions. [2022-04-28 05:54:31,706 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:54:31,713 INFO L225 Difference]: With dead ends: 73 [2022-04-28 05:54:31,713 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 05:54:31,715 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:54:31,717 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:54:31,718 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:54:31,727 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 05:54:31,739 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-28 05:54:31,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:31,739 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:54:31,740 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:54:31,740 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:54:31,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:31,746 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-28 05:54:31,746 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:54:31,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:31,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:31,747 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:54:31,748 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:54:31,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:31,754 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-28 05:54:31,754 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:54:31,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:31,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:31,755 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:31,755 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:31,755 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:54:31,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-28 05:54:31,759 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 33 [2022-04-28 05:54:31,759 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:31,759 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-28 05:54:31,759 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:54:31,759 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-28 05:54:31,800 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:54:31,800 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:54:31,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 05:54:31,801 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:31,801 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:54:31,801 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:54:31,801 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:31,802 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:31,802 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 1 times [2022-04-28 05:54:31,802 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:31,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1565013662] [2022-04-28 05:54:31,803 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:31,803 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 2 times [2022-04-28 05:54:31,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:31,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1760675111] [2022-04-28 05:54:31,804 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:31,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:31,832 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:31,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1839072853] [2022-04-28 05:54:31,832 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:31,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:31,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:31,848 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:54:31,849 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:54:31,895 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:54:31,896 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:31,899 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:54:31,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:31,928 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:32,154 INFO L272 TraceCheckUtils]: 0: Hoare triple {353#true} call ULTIMATE.init(); {353#true} is VALID [2022-04-28 05:54:32,154 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:54:32,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:54:32,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {353#true} {353#true} #112#return; {353#true} is VALID [2022-04-28 05:54:32,155 INFO L272 TraceCheckUtils]: 4: Hoare triple {353#true} call #t~ret6 := main(); {353#true} is VALID [2022-04-28 05:54:32,155 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:54:32,155 INFO L272 TraceCheckUtils]: 6: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {353#true} is VALID [2022-04-28 05:54:32,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:54:32,155 INFO L290 TraceCheckUtils]: 8: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:54:32,156 INFO L290 TraceCheckUtils]: 9: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:54:32,156 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {353#true} {353#true} #94#return; {353#true} is VALID [2022-04-28 05:54:32,156 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:54:32,156 INFO L272 TraceCheckUtils]: 12: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {353#true} is VALID [2022-04-28 05:54:32,156 INFO L290 TraceCheckUtils]: 13: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:54:32,157 INFO L290 TraceCheckUtils]: 14: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:54:32,157 INFO L290 TraceCheckUtils]: 15: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:54:32,157 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {353#true} {353#true} #96#return; {353#true} is VALID [2022-04-28 05:54:32,157 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:54:32,157 INFO L290 TraceCheckUtils]: 18: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:54:32,158 INFO L290 TraceCheckUtils]: 19: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:54:32,158 INFO L290 TraceCheckUtils]: 20: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:54:32,161 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {353#true} {353#true} #98#return; {353#true} is VALID [2022-04-28 05:54:32,161 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:54:32,162 INFO L290 TraceCheckUtils]: 23: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:54:32,162 INFO L290 TraceCheckUtils]: 24: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:54:32,162 INFO L290 TraceCheckUtils]: 25: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:54:32,163 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {353#true} {353#true} #100#return; {353#true} is VALID [2022-04-28 05:54:32,163 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:54:32,165 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:54:32,165 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:54:32,166 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:54:32,167 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:54:32,167 INFO L290 TraceCheckUtils]: 32: Hoare triple {454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {354#false} is VALID [2022-04-28 05:54:32,167 INFO L290 TraceCheckUtils]: 33: Hoare triple {354#false} assume !false; {354#false} is VALID [2022-04-28 05:54:32,168 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:54:32,168 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:54:32,169 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:32,169 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1760675111] [2022-04-28 05:54:32,169 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:32,169 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1839072853] [2022-04-28 05:54:32,170 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1839072853] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:32,170 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:32,170 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:54:32,171 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:32,171 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1565013662] [2022-04-28 05:54:32,172 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1565013662] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:32,172 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:32,172 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:54:32,172 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1198800580] [2022-04-28 05:54:32,172 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:32,173 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:54:32,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:32,174 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:54:32,194 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:54:32,194 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:54:32,198 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:32,199 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:54:32,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:54:32,200 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:54:32,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:32,473 INFO L93 Difference]: Finished difference Result 54 states and 69 transitions. [2022-04-28 05:54:32,473 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:54:32,473 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:54:32,474 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:32,474 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:54:32,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:54:32,477 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:54:32,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:54:32,479 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-28 05:54:32,528 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:54:32,532 INFO L225 Difference]: With dead ends: 54 [2022-04-28 05:54:32,532 INFO L226 Difference]: Without dead ends: 51 [2022-04-28 05:54:32,532 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:54:32,536 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:54:32,539 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:54:32,540 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-28 05:54:32,550 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-28 05:54:32,550 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:32,550 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:54:32,551 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:54:32,551 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:54:32,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:32,554 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-28 05:54:32,554 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-28 05:54:32,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:32,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:32,555 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:54:32,555 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:54:32,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:32,558 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-28 05:54:32,558 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-28 05:54:32,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:32,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:32,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:32,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:32,559 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:54:32,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2022-04-28 05:54:32,561 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 34 [2022-04-28 05:54:32,562 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:32,562 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2022-04-28 05:54:32,562 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:54:32,562 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 64 transitions. [2022-04-28 05:54:32,614 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:54:32,615 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-28 05:54:32,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 05:54:32,615 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:32,615 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:54:32,632 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:54:32,829 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:54:32,830 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:32,830 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:32,830 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 1 times [2022-04-28 05:54:32,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:32,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [819456184] [2022-04-28 05:54:32,831 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:32,831 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 2 times [2022-04-28 05:54:32,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:32,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [517742950] [2022-04-28 05:54:32,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:32,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:32,876 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:32,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [545525792] [2022-04-28 05:54:32,876 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:32,876 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:32,877 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:32,885 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:54:32,886 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:54:32,927 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:32,928 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:32,928 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:54:32,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:32,938 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:33,060 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-28 05:54:33,060 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:54:33,060 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,061 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-28 05:54:33,061 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-28 05:54:33,061 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:54:33,061 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-28 05:54:33,061 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:54:33,061 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:54:33,061 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,062 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-28 05:54:33,062 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:54:33,062 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-28 05:54:33,062 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:54:33,062 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:54:33,062 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,062 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-28 05:54:33,063 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:54:33,063 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:54:33,063 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:54:33,064 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:54:33,064 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:54:33,064 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:54:33,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:54:33,065 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:54:33,065 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,065 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:54:33,066 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:54:33,066 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:54:33,066 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:54:33,067 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:54:33,067 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:54:33,068 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:54:33,068 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:54:33,068 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-28 05:54:33,068 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:54:33,069 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 05:54:33,069 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 05:54:33,069 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 05:54:33,069 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:54:33,069 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:33,265 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 05:54:33,265 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 05:54:33,265 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 05:54:33,266 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:54:33,266 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-28 05:54:33,266 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:54:33,267 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:54:33,267 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:54:33,267 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:54:33,268 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:54:33,268 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:54:33,268 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:54:33,269 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:54:33,269 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,269 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:54:33,269 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:54:33,270 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:54:33,270 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:54:33,270 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:54:33,271 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:54:33,271 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:54:33,271 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:54:33,271 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-28 05:54:33,271 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,272 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:54:33,272 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:54:33,272 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-28 05:54:33,272 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:54:33,272 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-28 05:54:33,272 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,272 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:54:33,272 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:54:33,273 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-28 05:54:33,273 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:54:33,273 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-28 05:54:33,273 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-28 05:54:33,273 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:54:33,273 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:54:33,273 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-28 05:54:33,274 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:54:33,274 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:33,274 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [517742950] [2022-04-28 05:54:33,274 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:33,274 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [545525792] [2022-04-28 05:54:33,274 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [545525792] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:33,274 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:33,274 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:54:33,275 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:33,275 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [819456184] [2022-04-28 05:54:33,275 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [819456184] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:33,275 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:33,275 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:54:33,275 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1560430913] [2022-04-28 05:54:33,275 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:33,275 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:54:33,276 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:33,276 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:54:33,294 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:54:33,294 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:54:33,294 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:33,295 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:54:33,295 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:54:33,295 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:54:33,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:33,829 INFO L93 Difference]: Finished difference Result 103 states and 143 transitions. [2022-04-28 05:54:33,829 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:54:33,829 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:54:33,829 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:33,830 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:54:33,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-28 05:54:33,833 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:54:33,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-28 05:54:33,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-28 05:54:33,916 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:54:33,918 INFO L225 Difference]: With dead ends: 103 [2022-04-28 05:54:33,918 INFO L226 Difference]: Without dead ends: 96 [2022-04-28 05:54:33,919 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:54:33,919 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:54:33,920 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:54:33,920 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-28 05:54:33,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 71. [2022-04-28 05:54:33,991 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:33,992 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:54:33,992 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:54:33,993 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:54:33,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:33,996 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-28 05:54:33,996 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-28 05:54:33,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:33,998 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:33,998 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:54:33,998 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:54:34,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:34,002 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-28 05:54:34,002 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-28 05:54:34,003 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:34,003 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:34,003 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:34,003 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:34,003 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:54:34,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 95 transitions. [2022-04-28 05:54:34,005 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 95 transitions. Word has length 39 [2022-04-28 05:54:34,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:34,006 INFO L495 AbstractCegarLoop]: Abstraction has 71 states and 95 transitions. [2022-04-28 05:54:34,006 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:54:34,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 95 transitions. [2022-04-28 05:54:34,096 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:54:34,096 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 95 transitions. [2022-04-28 05:54:34,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 05:54:34,096 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:34,096 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:54:34,133 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:54:34,311 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:54:34,312 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:34,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:34,312 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 1 times [2022-04-28 05:54:34,312 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:34,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1517485822] [2022-04-28 05:54:34,313 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:34,313 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 2 times [2022-04-28 05:54:34,313 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:34,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1553651412] [2022-04-28 05:54:34,313 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:34,313 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:34,328 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:34,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1442343025] [2022-04-28 05:54:34,328 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:34,328 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:34,328 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:34,329 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:54:34,333 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:54:34,381 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:34,381 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:34,382 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-28 05:54:34,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:34,397 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:34,903 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-28 05:54:34,903 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:54:34,904 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:34,904 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-28 05:54:34,904 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-28 05:54:34,904 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:54:34,904 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:54:34,904 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:54:34,904 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:54:34,904 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:34,905 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-28 05:54:34,905 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:54:34,905 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:54:34,905 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:54:34,906 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:54:34,906 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:54:34,907 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1566#true} #96#return; {1621#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,907 INFO L272 TraceCheckUtils]: 17: Hoare triple {1621#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:54:34,907 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:54:34,908 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:54:34,908 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:54:34,909 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1621#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #98#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,909 INFO L272 TraceCheckUtils]: 22: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:54:34,909 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:54:34,909 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:54:34,909 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:34,910 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} #100#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,910 INFO L290 TraceCheckUtils]: 27: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,911 INFO L290 TraceCheckUtils]: 28: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,911 INFO L290 TraceCheckUtils]: 29: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 50))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,912 INFO L290 TraceCheckUtils]: 30: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,912 INFO L290 TraceCheckUtils]: 31: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} assume !(~c~0 >= ~b~0); {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,913 INFO L290 TraceCheckUtils]: 32: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,913 INFO L290 TraceCheckUtils]: 33: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,914 INFO L290 TraceCheckUtils]: 34: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,914 INFO L290 TraceCheckUtils]: 35: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,915 INFO L290 TraceCheckUtils]: 36: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,916 INFO L290 TraceCheckUtils]: 37: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} assume !false; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:34,916 INFO L272 TraceCheckUtils]: 38: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:34,917 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:54:34,917 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-28 05:54:34,917 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-28 05:54:34,918 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:54:34,918 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:35,264 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-28 05:54:35,264 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-28 05:54:35,265 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:54:35,265 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:54:35,266 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:54:35,266 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:54:35,267 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:54:35,267 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:54:35,268 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:54:35,268 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:54:35,269 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:54:35,269 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:54:35,270 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:54:35,270 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:54:35,271 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:54:35,271 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1566#true} #100#return; {1566#true} is VALID [2022-04-28 05:54:35,271 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:35,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:54:35,271 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:54:35,271 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:54:35,271 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1566#true} {1566#true} #98#return; {1566#true} is VALID [2022-04-28 05:54:35,272 INFO L290 TraceCheckUtils]: 20: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:35,272 INFO L290 TraceCheckUtils]: 19: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:54:35,272 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:54:35,272 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:54:35,272 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1566#true} {1566#true} #96#return; {1566#true} is VALID [2022-04-28 05:54:35,272 INFO L290 TraceCheckUtils]: 15: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:35,272 INFO L290 TraceCheckUtils]: 14: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:54:35,272 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:54:35,273 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:54:35,273 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:54:35,273 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-28 05:54:35,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:35,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:54:35,273 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:54:35,273 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:54:35,273 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:54:35,274 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-28 05:54:35,274 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-28 05:54:35,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:54:35,274 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:54:35,274 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-28 05:54:35,274 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:54:35,274 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:35,275 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1553651412] [2022-04-28 05:54:35,275 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:35,275 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1442343025] [2022-04-28 05:54:35,275 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1442343025] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:35,275 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:35,275 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-28 05:54:35,275 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:35,275 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1517485822] [2022-04-28 05:54:35,275 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1517485822] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:35,275 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:35,276 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:54:35,276 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1239404779] [2022-04-28 05:54:35,276 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:35,276 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:54:35,276 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:35,277 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:54:35,299 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:54:35,299 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:54:35,299 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:35,300 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:54:35,300 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:54:35,300 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:54:36,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:36,456 INFO L93 Difference]: Finished difference Result 112 states and 151 transitions. [2022-04-28 05:54:36,456 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:54:36,457 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:54:36,457 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:36,457 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:54:36,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-28 05:54:36,459 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:54:36,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-28 05:54:36,461 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 117 transitions. [2022-04-28 05:54:36,582 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:54:36,584 INFO L225 Difference]: With dead ends: 112 [2022-04-28 05:54:36,584 INFO L226 Difference]: Without dead ends: 110 [2022-04-28 05:54:36,584 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:54:36,585 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:54:36,585 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:54:36,586 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-28 05:54:36,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 93. [2022-04-28 05:54:36,729 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:36,730 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:54:36,730 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:54:36,730 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:54:36,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:36,734 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-28 05:54:36,734 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-28 05:54:36,734 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:36,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:36,735 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:54:36,735 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:54:36,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:36,738 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-28 05:54:36,739 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-28 05:54:36,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:36,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:36,739 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:36,739 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:36,740 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:54:36,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 122 transitions. [2022-04-28 05:54:36,742 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 122 transitions. Word has length 42 [2022-04-28 05:54:36,742 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:36,742 INFO L495 AbstractCegarLoop]: Abstraction has 93 states and 122 transitions. [2022-04-28 05:54:36,742 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:54:36,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 93 states and 122 transitions. [2022-04-28 05:54:36,863 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:54:36,863 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 122 transitions. [2022-04-28 05:54:36,863 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:54:36,863 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:36,864 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:54:36,884 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:54:37,064 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:54:37,064 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:37,065 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:37,065 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 1 times [2022-04-28 05:54:37,065 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:37,065 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1413760973] [2022-04-28 05:54:37,065 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:37,065 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 2 times [2022-04-28 05:54:37,066 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:37,066 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1720430912] [2022-04-28 05:54:37,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:37,066 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:37,077 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:37,078 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1855064070] [2022-04-28 05:54:37,078 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:37,078 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:37,078 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:37,079 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:54:37,080 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:54:37,113 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:37,113 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:37,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:54:37,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:37,123 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:37,374 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-28 05:54:37,374 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:54:37,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,374 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-28 05:54:37,374 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-28 05:54:37,375 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:54:37,375 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:54:37,375 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,375 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,375 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,375 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-28 05:54:37,375 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:54:37,375 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:54:37,376 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:54:37,376 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:54:37,376 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:54:37,377 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} {2475#true} #96#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:37,377 INFO L272 TraceCheckUtils]: 17: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:54:37,377 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,377 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,377 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,378 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #98#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:37,378 INFO L272 TraceCheckUtils]: 22: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:54:37,378 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,378 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,378 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,379 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #100#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:37,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2564#(<= 0 main_~b~0)} is VALID [2022-04-28 05:54:37,380 INFO L290 TraceCheckUtils]: 28: Hoare triple {2564#(<= 0 main_~b~0)} assume !false; {2564#(<= 0 main_~b~0)} is VALID [2022-04-28 05:54:37,380 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:54:37,380 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:54:37,381 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:54:37,381 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:54:37,381 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:54:37,382 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,382 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,382 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,382 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:54:37,383 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:54:37,383 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,383 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,383 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,384 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:54:37,384 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:54:37,384 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:54:37,385 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-28 05:54:37,385 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-28 05:54:37,385 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:54:37,385 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:37,578 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-28 05:54:37,578 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-28 05:54:37,579 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:54:37,579 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:54:37,580 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:54:37,580 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,580 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,580 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,580 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:54:37,581 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:54:37,581 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,581 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,581 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,582 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:54:37,582 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:54:37,582 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:54:37,583 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:54:37,583 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:54:37,583 INFO L290 TraceCheckUtils]: 28: Hoare triple {2475#true} assume !false; {2475#true} is VALID [2022-04-28 05:54:37,583 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:54:37,583 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2475#true} #100#return; {2475#true} is VALID [2022-04-28 05:54:37,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,584 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,584 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,584 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:54:37,584 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2475#true} #98#return; {2475#true} is VALID [2022-04-28 05:54:37,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,584 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,584 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,584 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:54:37,585 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2475#true} {2475#true} #96#return; {2475#true} is VALID [2022-04-28 05:54:37,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,585 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,585 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:54:37,585 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:54:37,585 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-28 05:54:37,585 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:54:37,586 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:54:37,586 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:54:37,586 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:54:37,586 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-28 05:54:37,586 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-28 05:54:37,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:54:37,586 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:54:37,586 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-28 05:54:37,587 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:54:37,587 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:37,587 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1720430912] [2022-04-28 05:54:37,587 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:37,587 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1855064070] [2022-04-28 05:54:37,587 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1855064070] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:54:37,587 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:54:37,587 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-28 05:54:37,588 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:37,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1413760973] [2022-04-28 05:54:37,588 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1413760973] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:37,588 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:37,588 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:54:37,588 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [889353448] [2022-04-28 05:54:37,588 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:37,588 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:54:37,589 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:37,589 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:54:37,608 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:54:37,608 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:54:37,608 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:37,609 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:54:37,609 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:54:37,609 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:54:37,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:37,997 INFO L93 Difference]: Finished difference Result 130 states and 179 transitions. [2022-04-28 05:54:37,997 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:54:37,998 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:54:37,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:37,998 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:54:37,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:54:37,999 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:54:38,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:54:38,000 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:54:38,045 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:54:38,048 INFO L225 Difference]: With dead ends: 130 [2022-04-28 05:54:38,048 INFO L226 Difference]: Without dead ends: 128 [2022-04-28 05:54:38,049 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:54:38,049 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:54:38,050 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:54:38,050 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-28 05:54:38,250 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 123. [2022-04-28 05:54:38,250 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:38,250 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:54:38,251 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:54:38,251 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:54:38,256 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:38,256 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-28 05:54:38,256 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-28 05:54:38,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:38,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:38,257 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:54:38,257 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:54:38,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:38,262 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-28 05:54:38,262 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-28 05:54:38,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:38,275 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:38,275 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:38,275 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:38,276 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:54:38,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 172 transitions. [2022-04-28 05:54:38,280 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 172 transitions. Word has length 47 [2022-04-28 05:54:38,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:38,281 INFO L495 AbstractCegarLoop]: Abstraction has 123 states and 172 transitions. [2022-04-28 05:54:38,281 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:54:38,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 123 states and 172 transitions. [2022-04-28 05:54:38,493 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:54:38,493 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 172 transitions. [2022-04-28 05:54:38,494 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:54:38,494 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:38,494 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:54:38,512 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:54:38,706 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:54:38,706 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:38,706 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:38,706 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 1 times [2022-04-28 05:54:38,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:38,707 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1059447295] [2022-04-28 05:54:38,707 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:38,707 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 2 times [2022-04-28 05:54:38,707 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:38,707 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [537934053] [2022-04-28 05:54:38,707 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:38,707 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:38,721 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:38,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1862098939] [2022-04-28 05:54:38,721 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:38,721 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:38,721 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:38,732 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:54:38,732 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:54:38,775 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:38,775 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:38,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-28 05:54:38,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:38,790 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:44,196 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-28 05:54:44,197 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:54:44,197 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:54:44,197 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-28 05:54:44,197 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-28 05:54:44,197 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:54:44,197 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:54:44,197 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:54:44,197 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:54:44,198 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:54:44,198 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-28 05:54:44,198 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:54:44,198 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:54:44,198 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:54:44,199 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:54:44,199 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:54:44,199 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3530#true} #96#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,199 INFO L272 TraceCheckUtils]: 17: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:54:44,200 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:54:44,200 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:54:44,200 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:54:44,200 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #98#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,200 INFO L272 TraceCheckUtils]: 22: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:54:44,201 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:54:44,201 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:54:44,201 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:54:44,202 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #100#return; {3616#(and (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,202 INFO L290 TraceCheckUtils]: 27: Hoare triple {3616#(and (<= 1 main_~y~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-28 05:54:44,203 INFO L290 TraceCheckUtils]: 28: Hoare triple {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !false; {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-28 05:54:44,203 INFO L290 TraceCheckUtils]: 29: Hoare triple {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-28 05:54:44,204 INFO L290 TraceCheckUtils]: 30: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !false; {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-28 05:54:44,204 INFO L290 TraceCheckUtils]: 31: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-28 05:54:44,204 INFO L290 TraceCheckUtils]: 32: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,205 INFO L290 TraceCheckUtils]: 33: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,205 INFO L290 TraceCheckUtils]: 34: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,206 INFO L290 TraceCheckUtils]: 35: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,206 INFO L290 TraceCheckUtils]: 36: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,207 INFO L290 TraceCheckUtils]: 37: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,207 INFO L272 TraceCheckUtils]: 38: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:54:44,207 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:54:44,207 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:54:44,207 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:54:44,208 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} #102#return; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-28 05:54:44,208 INFO L272 TraceCheckUtils]: 43: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:44,209 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:54:44,209 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-28 05:54:44,209 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-28 05:54:44,210 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:54:44,210 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:09,103 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-28 05:56:09,103 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-28 05:56:09,104 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:56:09,105 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:56:09,105 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:56:09,105 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:56:09,106 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:56:09,106 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:56:09,106 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:56:09,106 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:56:09,107 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:56:09,107 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:56:09,107 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:56:09,108 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:56:09,272 INFO L290 TraceCheckUtils]: 32: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:56:09,273 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:56:09,274 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:56:09,274 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:56:09,274 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:56:09,275 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:56:09,275 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-28 05:56:09,275 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:56:09,275 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:56:09,275 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:56:09,275 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:56:09,276 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-28 05:56:09,276 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:56:09,276 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:56:09,276 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:56:09,276 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:56:09,276 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-28 05:56:09,276 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:56:09,276 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:56:09,276 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:56:09,277 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:56:09,277 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:56:09,277 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-28 05:56:09,277 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:56:09,277 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:56:09,277 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:56:09,277 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:56:09,277 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:56:09,277 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-28 05:56:09,278 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-28 05:56:09,278 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:56:09,278 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:56:09,278 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-28 05:56:09,278 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:56:09,278 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:09,278 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [537934053] [2022-04-28 05:56:09,278 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:09,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1862098939] [2022-04-28 05:56:09,279 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1862098939] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:09,279 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:09,279 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 05:56:09,279 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:09,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1059447295] [2022-04-28 05:56:09,279 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1059447295] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:09,279 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:09,279 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:56:09,279 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [461088350] [2022-04-28 05:56:09,280 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:09,280 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:56:09,280 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:09,280 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:56:09,301 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:56:09,301 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:56:09,301 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:09,302 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:56:09,302 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:56:09,302 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:56:10,267 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:10,267 INFO L93 Difference]: Finished difference Result 137 states and 184 transitions. [2022-04-28 05:56:10,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:56:10,267 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:56:10,268 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:10,268 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:56:10,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-28 05:56:10,270 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:56:10,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-28 05:56:10,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 101 transitions. [2022-04-28 05:56:10,352 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:56:10,354 INFO L225 Difference]: With dead ends: 137 [2022-04-28 05:56:10,354 INFO L226 Difference]: Without dead ends: 135 [2022-04-28 05:56:10,355 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:56:10,355 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 58 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 231 SdHoareTripleChecker+Invalid, 280 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:10,355 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:56:10,356 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-04-28 05:56:10,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 131. [2022-04-28 05:56:10,579 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:10,580 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:56:10,580 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:56:10,580 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:56:10,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:10,584 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-28 05:56:10,584 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-28 05:56:10,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:10,585 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:10,585 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:56:10,585 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:56:10,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:10,589 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-28 05:56:10,589 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-28 05:56:10,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:10,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:10,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:10,589 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:10,590 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:56:10,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 178 transitions. [2022-04-28 05:56:10,593 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 178 transitions. Word has length 47 [2022-04-28 05:56:10,593 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:10,593 INFO L495 AbstractCegarLoop]: Abstraction has 131 states and 178 transitions. [2022-04-28 05:56:10,593 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:56:10,593 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 178 transitions. [2022-04-28 05:56:10,750 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:56:10,750 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 178 transitions. [2022-04-28 05:56:10,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:56:10,751 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:10,751 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:56:10,767 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:56:10,959 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:56:10,960 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:10,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:10,960 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 3 times [2022-04-28 05:56:10,960 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:10,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [389912927] [2022-04-28 05:56:10,960 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:10,961 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 4 times [2022-04-28 05:56:10,961 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:10,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [85931895] [2022-04-28 05:56:10,961 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:10,961 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:10,980 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:10,980 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [971795296] [2022-04-28 05:56:10,980 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:56:10,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:10,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:10,988 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:56:10,989 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:56:11,026 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:56:11,026 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:11,027 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:56:11,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:11,036 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:11,135 INFO L272 TraceCheckUtils]: 0: Hoare triple {4637#true} call ULTIMATE.init(); {4637#true} is VALID [2022-04-28 05:56:11,135 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:56:11,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:56:11,135 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4637#true} {4637#true} #112#return; {4637#true} is VALID [2022-04-28 05:56:11,135 INFO L272 TraceCheckUtils]: 4: Hoare triple {4637#true} call #t~ret6 := main(); {4637#true} is VALID [2022-04-28 05:56:11,135 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:56:11,136 INFO L272 TraceCheckUtils]: 6: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:56:11,136 INFO L290 TraceCheckUtils]: 7: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:56:11,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:56:11,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:56:11,136 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4637#true} {4637#true} #94#return; {4637#true} is VALID [2022-04-28 05:56:11,136 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:56:11,136 INFO L272 TraceCheckUtils]: 12: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:56:11,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:56:11,136 INFO L290 TraceCheckUtils]: 14: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:56:11,137 INFO L290 TraceCheckUtils]: 15: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:56:11,137 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4637#true} {4637#true} #96#return; {4637#true} is VALID [2022-04-28 05:56:11,137 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:56:11,137 INFO L290 TraceCheckUtils]: 18: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:56:11,137 INFO L290 TraceCheckUtils]: 19: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:56:11,137 INFO L290 TraceCheckUtils]: 20: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:56:11,137 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4637#true} {4637#true} #98#return; {4637#true} is VALID [2022-04-28 05:56:11,137 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:56:11,137 INFO L290 TraceCheckUtils]: 23: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:56:11,137 INFO L290 TraceCheckUtils]: 24: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:56:11,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:56:11,138 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4637#true} {4637#true} #100#return; {4637#true} is VALID [2022-04-28 05:56:11,138 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:56:11,138 INFO L290 TraceCheckUtils]: 28: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-28 05:56:11,138 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:56:11,138 INFO L290 TraceCheckUtils]: 30: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-28 05:56:11,138 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:56:11,139 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:56:11,139 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:56:11,140 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:56:11,140 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:56:11,140 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:56:11,140 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:56:11,141 INFO L290 TraceCheckUtils]: 38: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:56:11,141 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:56:11,141 INFO L290 TraceCheckUtils]: 40: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:56:11,141 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:56:11,141 INFO L290 TraceCheckUtils]: 42: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:56:11,141 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:56:11,141 INFO L290 TraceCheckUtils]: 44: Hoare triple {4638#false} ~cond := #in~cond; {4638#false} is VALID [2022-04-28 05:56:11,141 INFO L290 TraceCheckUtils]: 45: Hoare triple {4638#false} assume 0 == ~cond; {4638#false} is VALID [2022-04-28 05:56:11,141 INFO L290 TraceCheckUtils]: 46: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:56:11,142 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:56:11,142 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:56:11,142 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:11,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [85931895] [2022-04-28 05:56:11,142 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:11,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [971795296] [2022-04-28 05:56:11,142 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [971795296] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:11,142 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:11,142 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:56:11,143 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:11,143 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [389912927] [2022-04-28 05:56:11,143 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [389912927] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:11,143 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:11,143 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:56:11,143 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [457273101] [2022-04-28 05:56:11,143 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:11,143 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:56:11,144 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:11,144 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:56:11,170 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:56:11,171 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:56:11,171 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:11,171 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:56:11,171 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:56:11,171 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:56:11,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:11,641 INFO L93 Difference]: Finished difference Result 170 states and 230 transitions. [2022-04-28 05:56:11,641 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:56:11,641 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:56:11,642 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:11,642 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:56:11,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-28 05:56:11,644 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:56:11,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-28 05:56:11,645 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 102 transitions. [2022-04-28 05:56:11,693 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:56:11,696 INFO L225 Difference]: With dead ends: 170 [2022-04-28 05:56:11,696 INFO L226 Difference]: Without dead ends: 114 [2022-04-28 05:56:11,699 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:56:11,700 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:56:11,700 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:56:11,701 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-28 05:56:11,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-04-28 05:56:11,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:11,892 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:56:11,892 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:56:11,893 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:56:11,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:11,895 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-28 05:56:11,895 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-28 05:56:11,896 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:11,896 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:11,896 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:56:11,896 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:56:11,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:11,899 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-28 05:56:11,899 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-28 05:56:11,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:11,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:11,900 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:11,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:11,900 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:56:11,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 137 transitions. [2022-04-28 05:56:11,902 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 137 transitions. Word has length 47 [2022-04-28 05:56:11,902 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:11,903 INFO L495 AbstractCegarLoop]: Abstraction has 106 states and 137 transitions. [2022-04-28 05:56:11,903 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:56:11,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 137 transitions. [2022-04-28 05:56:12,057 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:56:12,057 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 137 transitions. [2022-04-28 05:56:12,058 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 05:56:12,058 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:12,058 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:56:12,074 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-28 05:56:12,258 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:56:12,259 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:12,259 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:12,259 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 1 times [2022-04-28 05:56:12,259 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:12,259 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1501350250] [2022-04-28 05:56:12,260 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:12,260 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 2 times [2022-04-28 05:56:12,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:12,260 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1060728923] [2022-04-28 05:56:12,260 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:12,260 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:12,271 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:12,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [669587669] [2022-04-28 05:56:12,271 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:12,272 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:12,272 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:12,285 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:56:12,285 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:56:12,331 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:12,332 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:12,332 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:56:12,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:12,345 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:12,476 INFO L272 TraceCheckUtils]: 0: Hoare triple {5567#true} call ULTIMATE.init(); {5567#true} is VALID [2022-04-28 05:56:12,476 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:56:12,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,477 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5567#true} {5567#true} #112#return; {5567#true} is VALID [2022-04-28 05:56:12,477 INFO L272 TraceCheckUtils]: 4: Hoare triple {5567#true} call #t~ret6 := main(); {5567#true} is VALID [2022-04-28 05:56:12,477 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:56:12,477 INFO L272 TraceCheckUtils]: 6: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:56:12,477 INFO L290 TraceCheckUtils]: 7: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,477 INFO L290 TraceCheckUtils]: 8: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,477 INFO L290 TraceCheckUtils]: 9: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,477 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5567#true} {5567#true} #94#return; {5567#true} is VALID [2022-04-28 05:56:12,478 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:56:12,478 INFO L272 TraceCheckUtils]: 12: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:56:12,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,478 INFO L290 TraceCheckUtils]: 15: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,478 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5567#true} {5567#true} #96#return; {5567#true} is VALID [2022-04-28 05:56:12,478 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:56:12,478 INFO L290 TraceCheckUtils]: 18: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,478 INFO L290 TraceCheckUtils]: 19: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,478 INFO L290 TraceCheckUtils]: 20: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,479 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5567#true} {5567#true} #98#return; {5567#true} is VALID [2022-04-28 05:56:12,479 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:56:12,479 INFO L290 TraceCheckUtils]: 23: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,479 INFO L290 TraceCheckUtils]: 24: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,479 INFO L290 TraceCheckUtils]: 25: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,480 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5567#true} {5567#true} #100#return; {5567#true} is VALID [2022-04-28 05:56:12,480 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:56:12,480 INFO L290 TraceCheckUtils]: 28: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-28 05:56:12,480 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:56:12,480 INFO L290 TraceCheckUtils]: 30: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-28 05:56:12,483 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:56:12,484 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:56:12,484 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:56:12,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,484 INFO L290 TraceCheckUtils]: 36: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,485 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:56:12,485 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:56:12,485 INFO L290 TraceCheckUtils]: 39: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,485 INFO L290 TraceCheckUtils]: 40: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,485 INFO L290 TraceCheckUtils]: 41: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,486 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:56:12,486 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:56:12,486 INFO L290 TraceCheckUtils]: 44: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:56:12,486 INFO L290 TraceCheckUtils]: 45: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:56:12,486 INFO L290 TraceCheckUtils]: 46: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:56:12,487 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:56:12,487 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:56:12,488 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:56:12,488 INFO L290 TraceCheckUtils]: 50: Hoare triple {5721#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5568#false} is VALID [2022-04-28 05:56:12,488 INFO L290 TraceCheckUtils]: 51: Hoare triple {5568#false} assume !false; {5568#false} is VALID [2022-04-28 05:56:12,488 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:56:12,488 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:56:12,489 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:12,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1060728923] [2022-04-28 05:56:12,489 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:12,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [669587669] [2022-04-28 05:56:12,489 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [669587669] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:12,489 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:12,489 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:56:12,489 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:12,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1501350250] [2022-04-28 05:56:12,489 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1501350250] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:12,490 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:12,490 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:56:12,490 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1972923970] [2022-04-28 05:56:12,490 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:12,490 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:56:12,490 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:12,490 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:56:12,514 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:56:12,514 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:56:12,514 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:12,515 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:56:12,515 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:56:12,515 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:56:13,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:13,006 INFO L93 Difference]: Finished difference Result 158 states and 221 transitions. [2022-04-28 05:56:13,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:56:13,006 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:56:13,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:13,007 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:56:13,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:56:13,007 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:56:13,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:56:13,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:56:13,058 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:56:13,060 INFO L225 Difference]: With dead ends: 158 [2022-04-28 05:56:13,061 INFO L226 Difference]: Without dead ends: 156 [2022-04-28 05:56:13,061 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:56:13,061 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:56:13,061 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:56:13,062 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-28 05:56:13,349 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 140. [2022-04-28 05:56:13,350 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:13,350 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:56:13,351 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:56:13,351 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:56:13,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:13,355 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-28 05:56:13,355 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-28 05:56:13,356 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:13,356 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:13,356 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:56:13,357 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:56:13,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:13,361 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-28 05:56:13,361 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-28 05:56:13,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:13,361 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:13,362 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:13,362 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:13,362 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:56:13,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 194 transitions. [2022-04-28 05:56:13,366 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 194 transitions. Word has length 52 [2022-04-28 05:56:13,366 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:13,366 INFO L495 AbstractCegarLoop]: Abstraction has 140 states and 194 transitions. [2022-04-28 05:56:13,366 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:56:13,366 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 140 states and 194 transitions. [2022-04-28 05:56:13,618 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:56:13,618 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 194 transitions. [2022-04-28 05:56:13,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 05:56:13,619 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:13,619 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:56:13,637 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:56:13,819 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:56:13,819 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:13,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:13,820 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 1 times [2022-04-28 05:56:13,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:13,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1869033527] [2022-04-28 05:56:13,820 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:13,820 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 2 times [2022-04-28 05:56:13,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:13,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [931007187] [2022-04-28 05:56:13,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:13,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:13,837 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:13,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1734697287] [2022-04-28 05:56:13,837 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:13,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:13,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:13,848 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:56:13,849 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:56:13,890 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:13,890 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:13,891 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-28 05:56:13,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:13,902 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:14,461 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-28 05:56:14,461 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:56:14,461 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,461 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-28 05:56:14,461 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-28 05:56:14,461 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:56:14,462 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-28 05:56:14,462 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:56:14,462 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:14,462 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,463 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-28 05:56:14,463 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:56:14,463 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:14,463 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:14,463 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,463 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-28 05:56:14,463 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:56:14,463 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:14,463 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:14,463 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,464 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-28 05:56:14,464 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:56:14,464 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:56:14,465 INFO L290 TraceCheckUtils]: 29: Hoare triple {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,465 INFO L290 TraceCheckUtils]: 30: Hoare triple {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,466 INFO L290 TraceCheckUtils]: 31: Hoare triple {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,466 INFO L290 TraceCheckUtils]: 32: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,466 INFO L272 TraceCheckUtils]: 33: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:14,467 INFO L290 TraceCheckUtils]: 34: Hoare triple {6637#true} ~cond := #in~cond; {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:14,467 INFO L290 TraceCheckUtils]: 35: Hoare triple {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:14,467 INFO L290 TraceCheckUtils]: 36: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:14,468 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,468 INFO L272 TraceCheckUtils]: 38: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:14,469 INFO L290 TraceCheckUtils]: 39: Hoare triple {6637#true} ~cond := #in~cond; {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:14,469 INFO L290 TraceCheckUtils]: 40: Hoare triple {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:14,469 INFO L290 TraceCheckUtils]: 41: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:14,470 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,470 INFO L272 TraceCheckUtils]: 43: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:14,470 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:14,471 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:14,471 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,472 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6637#true} {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,472 INFO L272 TraceCheckUtils]: 48: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:14,472 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:14,472 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:14,472 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:14,473 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6637#true} {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,473 INFO L290 TraceCheckUtils]: 53: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,474 INFO L290 TraceCheckUtils]: 54: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,475 INFO L290 TraceCheckUtils]: 55: Hoare triple {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,475 INFO L290 TraceCheckUtils]: 56: Hoare triple {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:14,476 INFO L290 TraceCheckUtils]: 57: Hoare triple {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:56:14,476 INFO L290 TraceCheckUtils]: 58: Hoare triple {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:56:14,477 INFO L290 TraceCheckUtils]: 59: Hoare triple {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {6827#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-28 05:56:14,478 INFO L272 TraceCheckUtils]: 60: Hoare triple {6827#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:14,478 INFO L290 TraceCheckUtils]: 61: Hoare triple {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6835#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:14,478 INFO L290 TraceCheckUtils]: 62: Hoare triple {6835#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-28 05:56:14,478 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-28 05:56:14,479 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:56:14,479 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:50,223 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-28 05:56:50,223 INFO L290 TraceCheckUtils]: 62: Hoare triple {6835#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-28 05:56:50,224 INFO L290 TraceCheckUtils]: 61: Hoare triple {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6835#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:50,225 INFO L272 TraceCheckUtils]: 60: Hoare triple {6851#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:50,225 INFO L290 TraceCheckUtils]: 59: Hoare triple {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {6851#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:56:50,226 INFO L290 TraceCheckUtils]: 58: Hoare triple {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:56:50,334 INFO L290 TraceCheckUtils]: 57: Hoare triple {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:56:50,334 INFO L290 TraceCheckUtils]: 56: Hoare triple {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,335 INFO L290 TraceCheckUtils]: 55: Hoare triple {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,397 INFO L290 TraceCheckUtils]: 54: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,397 INFO L290 TraceCheckUtils]: 53: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,398 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6637#true} {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,398 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,398 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:50,398 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:50,399 INFO L272 TraceCheckUtils]: 48: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:50,399 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6637#true} {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,400 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,400 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:50,400 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:50,400 INFO L272 TraceCheckUtils]: 43: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:50,401 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6909#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,401 INFO L290 TraceCheckUtils]: 41: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:50,402 INFO L290 TraceCheckUtils]: 40: Hoare triple {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:50,402 INFO L290 TraceCheckUtils]: 39: Hoare triple {6637#true} ~cond := #in~cond; {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:56:50,402 INFO L272 TraceCheckUtils]: 38: Hoare triple {6909#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:50,403 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {6909#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,403 INFO L290 TraceCheckUtils]: 36: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:50,404 INFO L290 TraceCheckUtils]: 35: Hoare triple {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:50,404 INFO L290 TraceCheckUtils]: 34: Hoare triple {6637#true} ~cond := #in~cond; {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:56:50,404 INFO L272 TraceCheckUtils]: 33: Hoare triple {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:50,405 INFO L290 TraceCheckUtils]: 32: Hoare triple {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,406 INFO L290 TraceCheckUtils]: 31: Hoare triple {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:56:50,407 INFO L290 TraceCheckUtils]: 30: Hoare triple {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:56:50,407 INFO L290 TraceCheckUtils]: 29: Hoare triple {6637#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:56:50,407 INFO L290 TraceCheckUtils]: 28: Hoare triple {6637#true} assume !false; {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L290 TraceCheckUtils]: 27: Hoare triple {6637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:50,408 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:56:50,408 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,408 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:50,409 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:50,409 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:56:50,409 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-28 05:56:50,409 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,409 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:50,409 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:50,409 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:50,409 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:56:50,409 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-28 05:56:50,409 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,410 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:56:50,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:56:50,410 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:56:50,410 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:56:50,410 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-28 05:56:50,410 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-28 05:56:50,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:56:50,410 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:56:50,410 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-28 05:56:50,411 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:56:50,411 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:50,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [931007187] [2022-04-28 05:56:50,411 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:50,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1734697287] [2022-04-28 05:56:50,411 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1734697287] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:50,411 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:50,411 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 05:56:50,412 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:50,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1869033527] [2022-04-28 05:56:50,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1869033527] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:50,412 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:50,412 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:56:50,412 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1819760257] [2022-04-28 05:56:50,412 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:50,412 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-28 05:56:50,413 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:50,413 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:56:50,451 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:56:50,451 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:56:50,451 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:50,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:56:50,452 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:56:50,452 INFO L87 Difference]: Start difference. First operand 140 states and 194 transitions. Second operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:56:52,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:52,573 INFO L93 Difference]: Finished difference Result 200 states and 283 transitions. [2022-04-28 05:56:52,573 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:56:52,574 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-28 05:56:52,574 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:52,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:56:52,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-28 05:56:52,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:56:52,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-28 05:56:52,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 131 transitions. [2022-04-28 05:56:52,734 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:56:52,737 INFO L225 Difference]: With dead ends: 200 [2022-04-28 05:56:52,737 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 05:56:52,738 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:56:52,738 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 53 mSDsluCounter, 265 mSDsCounter, 0 mSdLazyCounter, 634 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 667 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 634 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:52,738 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [69 Valid, 310 Invalid, 667 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 634 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:56:52,738 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 05:56:53,161 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 193. [2022-04-28 05:56:53,162 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:53,162 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:56:53,162 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:56:53,163 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:56:53,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:53,168 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-28 05:56:53,168 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-28 05:56:53,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:53,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:53,169 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:56:53,170 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:56:53,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:53,174 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-28 05:56:53,174 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-28 05:56:53,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:53,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:53,175 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:53,175 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:53,175 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:56:53,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 275 transitions. [2022-04-28 05:56:53,181 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 275 transitions. Word has length 64 [2022-04-28 05:56:53,181 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:53,181 INFO L495 AbstractCegarLoop]: Abstraction has 193 states and 275 transitions. [2022-04-28 05:56:53,181 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:56:53,181 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 193 states and 275 transitions. [2022-04-28 05:56:53,534 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:56:53,535 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 275 transitions. [2022-04-28 05:56:53,535 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:56:53,535 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:53,536 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:56:53,552 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-28 05:56:53,755 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:56:53,755 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:53,755 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:53,755 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 3 times [2022-04-28 05:56:53,755 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:53,755 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1922560980] [2022-04-28 05:56:53,756 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:53,756 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 4 times [2022-04-28 05:56:53,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:53,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [503458579] [2022-04-28 05:56:53,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:53,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:53,796 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:53,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1828763532] [2022-04-28 05:56:53,796 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:56:53,796 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:53,797 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:53,808 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:56:53,809 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:56:53,849 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:56:53,849 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:53,850 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:56:53,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:53,859 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:54,071 INFO L272 TraceCheckUtils]: 0: Hoare triple {8229#true} call ULTIMATE.init(); {8229#true} is VALID [2022-04-28 05:56:54,071 INFO L290 TraceCheckUtils]: 1: Hoare triple {8229#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8229#true} is VALID [2022-04-28 05:56:54,071 INFO L290 TraceCheckUtils]: 2: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,071 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8229#true} {8229#true} #112#return; {8229#true} is VALID [2022-04-28 05:56:54,071 INFO L272 TraceCheckUtils]: 4: Hoare triple {8229#true} call #t~ret6 := main(); {8229#true} is VALID [2022-04-28 05:56:54,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {8229#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L272 TraceCheckUtils]: 6: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8229#true} {8229#true} #94#return; {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {8229#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L272 TraceCheckUtils]: 12: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,072 INFO L290 TraceCheckUtils]: 15: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8229#true} {8229#true} #96#return; {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L272 TraceCheckUtils]: 17: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L290 TraceCheckUtils]: 18: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L290 TraceCheckUtils]: 19: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8229#true} {8229#true} #98#return; {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L272 TraceCheckUtils]: 22: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,073 INFO L290 TraceCheckUtils]: 25: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,074 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8229#true} {8229#true} #100#return; {8229#true} is VALID [2022-04-28 05:56:54,074 INFO L290 TraceCheckUtils]: 27: Hoare triple {8229#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8229#true} is VALID [2022-04-28 05:56:54,074 INFO L290 TraceCheckUtils]: 28: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:56:54,074 INFO L290 TraceCheckUtils]: 29: Hoare triple {8229#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8229#true} is VALID [2022-04-28 05:56:54,074 INFO L290 TraceCheckUtils]: 30: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:56:54,090 INFO L290 TraceCheckUtils]: 31: Hoare triple {8229#true} assume !(~c~0 >= ~b~0); {8327#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:56:54,091 INFO L290 TraceCheckUtils]: 32: Hoare triple {8327#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:56:54,091 INFO L290 TraceCheckUtils]: 33: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !false; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:56:54,092 INFO L290 TraceCheckUtils]: 34: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:56:54,092 INFO L290 TraceCheckUtils]: 35: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !false; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:56:54,092 INFO L290 TraceCheckUtils]: 36: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,093 INFO L290 TraceCheckUtils]: 37: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !false; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,093 INFO L272 TraceCheckUtils]: 38: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,093 INFO L290 TraceCheckUtils]: 39: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,093 INFO L290 TraceCheckUtils]: 40: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,093 INFO L290 TraceCheckUtils]: 41: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,094 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #102#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,094 INFO L272 TraceCheckUtils]: 43: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,094 INFO L290 TraceCheckUtils]: 44: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,094 INFO L290 TraceCheckUtils]: 45: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,094 INFO L290 TraceCheckUtils]: 46: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,103 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #104#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,103 INFO L272 TraceCheckUtils]: 48: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,104 INFO L290 TraceCheckUtils]: 49: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,104 INFO L290 TraceCheckUtils]: 50: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,104 INFO L290 TraceCheckUtils]: 51: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,104 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #106#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,104 INFO L272 TraceCheckUtils]: 53: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,105 INFO L290 TraceCheckUtils]: 54: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,105 INFO L290 TraceCheckUtils]: 55: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,105 INFO L290 TraceCheckUtils]: 56: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,105 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #108#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,105 INFO L290 TraceCheckUtils]: 58: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,106 INFO L290 TraceCheckUtils]: 59: Hoare triple {8345#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:56:54,106 INFO L290 TraceCheckUtils]: 60: Hoare triple {8415#(< 0 main_~c~0)} assume !false; {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:56:54,107 INFO L290 TraceCheckUtils]: 61: Hoare triple {8415#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:56:54,107 INFO L290 TraceCheckUtils]: 62: Hoare triple {8415#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8425#(< 0 main_~b~0)} is VALID [2022-04-28 05:56:54,107 INFO L290 TraceCheckUtils]: 63: Hoare triple {8425#(< 0 main_~b~0)} assume !false; {8425#(< 0 main_~b~0)} is VALID [2022-04-28 05:56:54,108 INFO L290 TraceCheckUtils]: 64: Hoare triple {8425#(< 0 main_~b~0)} assume !(0 != ~b~0); {8230#false} is VALID [2022-04-28 05:56:54,108 INFO L272 TraceCheckUtils]: 65: Hoare triple {8230#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8230#false} is VALID [2022-04-28 05:56:54,108 INFO L290 TraceCheckUtils]: 66: Hoare triple {8230#false} ~cond := #in~cond; {8230#false} is VALID [2022-04-28 05:56:54,108 INFO L290 TraceCheckUtils]: 67: Hoare triple {8230#false} assume 0 == ~cond; {8230#false} is VALID [2022-04-28 05:56:54,108 INFO L290 TraceCheckUtils]: 68: Hoare triple {8230#false} assume !false; {8230#false} is VALID [2022-04-28 05:56:54,108 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:56:54,108 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:54,295 INFO L290 TraceCheckUtils]: 68: Hoare triple {8230#false} assume !false; {8230#false} is VALID [2022-04-28 05:56:54,295 INFO L290 TraceCheckUtils]: 67: Hoare triple {8230#false} assume 0 == ~cond; {8230#false} is VALID [2022-04-28 05:56:54,295 INFO L290 TraceCheckUtils]: 66: Hoare triple {8230#false} ~cond := #in~cond; {8230#false} is VALID [2022-04-28 05:56:54,295 INFO L272 TraceCheckUtils]: 65: Hoare triple {8230#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8230#false} is VALID [2022-04-28 05:56:54,296 INFO L290 TraceCheckUtils]: 64: Hoare triple {8425#(< 0 main_~b~0)} assume !(0 != ~b~0); {8230#false} is VALID [2022-04-28 05:56:54,299 INFO L290 TraceCheckUtils]: 63: Hoare triple {8425#(< 0 main_~b~0)} assume !false; {8425#(< 0 main_~b~0)} is VALID [2022-04-28 05:56:54,300 INFO L290 TraceCheckUtils]: 62: Hoare triple {8415#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8425#(< 0 main_~b~0)} is VALID [2022-04-28 05:56:54,300 INFO L290 TraceCheckUtils]: 61: Hoare triple {8415#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:56:54,300 INFO L290 TraceCheckUtils]: 60: Hoare triple {8415#(< 0 main_~c~0)} assume !false; {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:56:54,301 INFO L290 TraceCheckUtils]: 59: Hoare triple {8345#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:56:54,301 INFO L290 TraceCheckUtils]: 58: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,301 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #108#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,302 INFO L290 TraceCheckUtils]: 56: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,302 INFO L290 TraceCheckUtils]: 55: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,302 INFO L290 TraceCheckUtils]: 54: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,302 INFO L272 TraceCheckUtils]: 53: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,302 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #106#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,302 INFO L290 TraceCheckUtils]: 51: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,303 INFO L290 TraceCheckUtils]: 50: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,303 INFO L290 TraceCheckUtils]: 49: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,303 INFO L272 TraceCheckUtils]: 48: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,303 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #104#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,303 INFO L290 TraceCheckUtils]: 46: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,303 INFO L290 TraceCheckUtils]: 45: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,304 INFO L290 TraceCheckUtils]: 44: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,304 INFO L272 TraceCheckUtils]: 43: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,304 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #102#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,304 INFO L290 TraceCheckUtils]: 41: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,304 INFO L290 TraceCheckUtils]: 40: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,305 INFO L290 TraceCheckUtils]: 39: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,305 INFO L272 TraceCheckUtils]: 38: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,305 INFO L290 TraceCheckUtils]: 37: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !false; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,305 INFO L290 TraceCheckUtils]: 36: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:56:54,306 INFO L290 TraceCheckUtils]: 35: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !false; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:56:54,306 INFO L290 TraceCheckUtils]: 34: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:56:54,306 INFO L290 TraceCheckUtils]: 33: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !false; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:56:54,307 INFO L290 TraceCheckUtils]: 32: Hoare triple {8327#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:56:54,307 INFO L290 TraceCheckUtils]: 31: Hoare triple {8229#true} assume !(~c~0 >= ~b~0); {8327#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:56:54,307 INFO L290 TraceCheckUtils]: 30: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:56:54,307 INFO L290 TraceCheckUtils]: 29: Hoare triple {8229#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8229#true} is VALID [2022-04-28 05:56:54,307 INFO L290 TraceCheckUtils]: 28: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:56:54,307 INFO L290 TraceCheckUtils]: 27: Hoare triple {8229#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8229#true} is VALID [2022-04-28 05:56:54,307 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8229#true} {8229#true} #100#return; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 25: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 24: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 23: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L272 TraceCheckUtils]: 22: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8229#true} {8229#true} #98#return; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 20: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 19: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 18: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L272 TraceCheckUtils]: 17: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8229#true} {8229#true} #96#return; {8229#true} is VALID [2022-04-28 05:56:54,308 INFO L290 TraceCheckUtils]: 15: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L272 TraceCheckUtils]: 12: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 11: Hoare triple {8229#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8229#true} {8229#true} #94#return; {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L272 TraceCheckUtils]: 6: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:56:54,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {8229#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8229#true} is VALID [2022-04-28 05:56:54,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {8229#true} call #t~ret6 := main(); {8229#true} is VALID [2022-04-28 05:56:54,310 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8229#true} {8229#true} #112#return; {8229#true} is VALID [2022-04-28 05:56:54,310 INFO L290 TraceCheckUtils]: 2: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:56:54,310 INFO L290 TraceCheckUtils]: 1: Hoare triple {8229#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8229#true} is VALID [2022-04-28 05:56:54,310 INFO L272 TraceCheckUtils]: 0: Hoare triple {8229#true} call ULTIMATE.init(); {8229#true} is VALID [2022-04-28 05:56:54,310 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:56:54,310 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:54,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [503458579] [2022-04-28 05:56:54,310 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:54,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1828763532] [2022-04-28 05:56:54,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1828763532] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:54,311 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:54,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 05:56:54,311 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:54,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1922560980] [2022-04-28 05:56:54,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1922560980] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:54,311 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:54,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:56:54,311 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [290392040] [2022-04-28 05:56:54,311 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:54,312 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:56:54,312 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:54,312 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:56:54,345 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:56:54,345 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:56:54,345 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:54,346 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:56:54,346 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:56:54,346 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:56:56,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:56,191 INFO L93 Difference]: Finished difference Result 288 states and 424 transitions. [2022-04-28 05:56:56,191 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:56:56,191 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:56:56,192 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:56,192 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:56:56,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 05:56:56,194 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:56:56,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 05:56:56,196 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-28 05:56:56,323 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:56:56,328 INFO L225 Difference]: With dead ends: 288 [2022-04-28 05:56:56,328 INFO L226 Difference]: Without dead ends: 281 [2022-04-28 05:56:56,329 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:56:56,329 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:56:56,329 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:56:56,330 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2022-04-28 05:56:56,876 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 208. [2022-04-28 05:56:56,877 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:56,877 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:56:56,877 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:56:56,878 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:56:56,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:56,885 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-28 05:56:56,885 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-28 05:56:56,888 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:56,888 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:56,888 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:56:56,888 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:56:56,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:56,896 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-28 05:56:56,896 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-28 05:56:56,897 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:56,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:56,897 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:56,897 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:56,897 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:56:56,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 296 transitions. [2022-04-28 05:56:56,904 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 296 transitions. Word has length 69 [2022-04-28 05:56:56,904 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:56,904 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 296 transitions. [2022-04-28 05:56:56,904 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:56:56,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 296 transitions. [2022-04-28 05:56:57,314 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:56:57,314 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 296 transitions. [2022-04-28 05:56:57,315 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-28 05:56:57,315 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:57,315 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:56:57,335 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-28 05:56:57,535 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:56:57,536 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:57,537 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:57,537 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 1 times [2022-04-28 05:56:57,537 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:57,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1954901039] [2022-04-28 05:56:57,538 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:57,538 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 2 times [2022-04-28 05:56:57,538 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:57,538 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1350311985] [2022-04-28 05:56:57,538 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:57,538 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:57,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:57,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [113780066] [2022-04-28 05:56:57,585 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:57,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:57,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:57,593 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:56:57,599 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:56:57,645 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:57,646 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:57,646 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:56:57,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:57,660 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:57,857 INFO L272 TraceCheckUtils]: 0: Hoare triple {10231#true} call ULTIMATE.init(); {10231#true} is VALID [2022-04-28 05:56:57,857 INFO L290 TraceCheckUtils]: 1: Hoare triple {10231#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {10231#true} is VALID [2022-04-28 05:56:57,857 INFO L290 TraceCheckUtils]: 2: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,857 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10231#true} {10231#true} #112#return; {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L272 TraceCheckUtils]: 4: Hoare triple {10231#true} call #t~ret6 := main(); {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L290 TraceCheckUtils]: 5: Hoare triple {10231#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L272 TraceCheckUtils]: 6: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L290 TraceCheckUtils]: 7: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L290 TraceCheckUtils]: 8: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L290 TraceCheckUtils]: 9: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10231#true} {10231#true} #94#return; {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L290 TraceCheckUtils]: 11: Hoare triple {10231#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L272 TraceCheckUtils]: 12: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,858 INFO L290 TraceCheckUtils]: 13: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 14: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 15: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10231#true} {10231#true} #96#return; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L272 TraceCheckUtils]: 17: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 19: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10231#true} {10231#true} #98#return; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L272 TraceCheckUtils]: 22: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 23: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,859 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10231#true} {10231#true} #100#return; {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L290 TraceCheckUtils]: 27: Hoare triple {10231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L290 TraceCheckUtils]: 28: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L290 TraceCheckUtils]: 29: Hoare triple {10231#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L290 TraceCheckUtils]: 30: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:56:57,860 INFO L290 TraceCheckUtils]: 31: Hoare triple {10231#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:56:57,861 INFO L290 TraceCheckUtils]: 32: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:56:57,861 INFO L272 TraceCheckUtils]: 33: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,861 INFO L290 TraceCheckUtils]: 34: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,861 INFO L290 TraceCheckUtils]: 35: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,861 INFO L290 TraceCheckUtils]: 36: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,861 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:56:57,862 INFO L272 TraceCheckUtils]: 38: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,862 INFO L290 TraceCheckUtils]: 39: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,862 INFO L290 TraceCheckUtils]: 40: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,862 INFO L290 TraceCheckUtils]: 41: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,862 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:56:57,862 INFO L272 TraceCheckUtils]: 43: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,862 INFO L290 TraceCheckUtils]: 44: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,863 INFO L290 TraceCheckUtils]: 45: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,863 INFO L290 TraceCheckUtils]: 46: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,863 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:56:57,863 INFO L272 TraceCheckUtils]: 48: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,863 INFO L290 TraceCheckUtils]: 49: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,863 INFO L290 TraceCheckUtils]: 50: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,863 INFO L290 TraceCheckUtils]: 51: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,866 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #108#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:56:57,867 INFO L290 TraceCheckUtils]: 53: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:56:57,867 INFO L290 TraceCheckUtils]: 54: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} assume !false; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:56:57,867 INFO L272 TraceCheckUtils]: 55: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,867 INFO L290 TraceCheckUtils]: 56: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,867 INFO L290 TraceCheckUtils]: 57: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,868 INFO L290 TraceCheckUtils]: 58: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,868 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10231#true} {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #102#return; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:56:57,868 INFO L272 TraceCheckUtils]: 60: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,868 INFO L290 TraceCheckUtils]: 61: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,868 INFO L290 TraceCheckUtils]: 62: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,868 INFO L290 TraceCheckUtils]: 63: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,869 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10231#true} {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #104#return; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:56:57,869 INFO L272 TraceCheckUtils]: 65: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:57,869 INFO L290 TraceCheckUtils]: 66: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:57,869 INFO L290 TraceCheckUtils]: 67: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:57,869 INFO L290 TraceCheckUtils]: 68: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:57,870 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10231#true} {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #106#return; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:56:57,870 INFO L272 TraceCheckUtils]: 70: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:57,870 INFO L290 TraceCheckUtils]: 71: Hoare triple {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10452#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:57,871 INFO L290 TraceCheckUtils]: 72: Hoare triple {10452#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10232#false} is VALID [2022-04-28 05:56:57,871 INFO L290 TraceCheckUtils]: 73: Hoare triple {10232#false} assume !false; {10232#false} is VALID [2022-04-28 05:56:57,871 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:56:57,871 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:58,058 INFO L290 TraceCheckUtils]: 73: Hoare triple {10232#false} assume !false; {10232#false} is VALID [2022-04-28 05:56:58,058 INFO L290 TraceCheckUtils]: 72: Hoare triple {10452#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10232#false} is VALID [2022-04-28 05:56:58,059 INFO L290 TraceCheckUtils]: 71: Hoare triple {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10452#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:58,060 INFO L272 TraceCheckUtils]: 70: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:58,061 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,061 INFO L290 TraceCheckUtils]: 68: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,064 INFO L290 TraceCheckUtils]: 67: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,064 INFO L290 TraceCheckUtils]: 66: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,065 INFO L272 TraceCheckUtils]: 65: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,066 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,066 INFO L290 TraceCheckUtils]: 63: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,066 INFO L290 TraceCheckUtils]: 62: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,066 INFO L290 TraceCheckUtils]: 61: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,066 INFO L272 TraceCheckUtils]: 60: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,067 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,067 INFO L290 TraceCheckUtils]: 58: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,067 INFO L290 TraceCheckUtils]: 57: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,067 INFO L290 TraceCheckUtils]: 56: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,067 INFO L272 TraceCheckUtils]: 55: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,067 INFO L290 TraceCheckUtils]: 54: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,069 INFO L290 TraceCheckUtils]: 53: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,070 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #108#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,070 INFO L290 TraceCheckUtils]: 51: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,070 INFO L290 TraceCheckUtils]: 50: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,070 INFO L290 TraceCheckUtils]: 49: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,070 INFO L272 TraceCheckUtils]: 48: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,071 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,071 INFO L290 TraceCheckUtils]: 46: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,071 INFO L290 TraceCheckUtils]: 45: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,071 INFO L290 TraceCheckUtils]: 44: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,071 INFO L272 TraceCheckUtils]: 43: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,071 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,071 INFO L290 TraceCheckUtils]: 41: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,072 INFO L290 TraceCheckUtils]: 40: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,072 INFO L290 TraceCheckUtils]: 39: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,072 INFO L272 TraceCheckUtils]: 38: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,072 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,072 INFO L290 TraceCheckUtils]: 36: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,072 INFO L290 TraceCheckUtils]: 35: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,073 INFO L272 TraceCheckUtils]: 33: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,073 INFO L290 TraceCheckUtils]: 32: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,073 INFO L290 TraceCheckUtils]: 31: Hoare triple {10231#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:56:58,073 INFO L290 TraceCheckUtils]: 30: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:56:58,073 INFO L290 TraceCheckUtils]: 29: Hoare triple {10231#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10231#true} is VALID [2022-04-28 05:56:58,073 INFO L290 TraceCheckUtils]: 28: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 27: Hoare triple {10231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10231#true} {10231#true} #100#return; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L272 TraceCheckUtils]: 22: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10231#true} {10231#true} #98#return; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 19: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,074 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L272 TraceCheckUtils]: 17: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10231#true} {10231#true} #96#return; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 15: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 14: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 13: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L272 TraceCheckUtils]: 12: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 11: Hoare triple {10231#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10231#true} {10231#true} #94#return; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 9: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 8: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:56:58,075 INFO L290 TraceCheckUtils]: 7: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L272 TraceCheckUtils]: 6: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L290 TraceCheckUtils]: 5: Hoare triple {10231#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L272 TraceCheckUtils]: 4: Hoare triple {10231#true} call #t~ret6 := main(); {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10231#true} {10231#true} #112#return; {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L290 TraceCheckUtils]: 2: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L290 TraceCheckUtils]: 1: Hoare triple {10231#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {10231#true} is VALID [2022-04-28 05:56:58,076 INFO L272 TraceCheckUtils]: 0: Hoare triple {10231#true} call ULTIMATE.init(); {10231#true} is VALID [2022-04-28 05:56:58,076 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:56:58,076 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:58,077 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1350311985] [2022-04-28 05:56:58,077 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:58,077 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [113780066] [2022-04-28 05:56:58,077 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [113780066] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:56:58,077 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:56:58,077 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-28 05:56:58,077 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:58,077 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1954901039] [2022-04-28 05:56:58,077 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1954901039] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:58,077 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:58,078 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:56:58,078 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1077589776] [2022-04-28 05:56:58,078 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:58,079 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:56:58,079 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:58,079 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:56:58,101 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:56:58,101 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:56:58,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:58,102 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:56:58,102 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:56:58,102 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:56:58,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:58,786 INFO L93 Difference]: Finished difference Result 214 states and 301 transitions. [2022-04-28 05:56:58,786 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:56:58,786 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:56:58,786 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:58,786 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:56:58,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 05:56:58,787 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:56:58,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 05:56:58,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 05:56:58,827 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:56:58,830 INFO L225 Difference]: With dead ends: 214 [2022-04-28 05:56:58,830 INFO L226 Difference]: Without dead ends: 212 [2022-04-28 05:56:58,830 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:56:58,831 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:56:58,831 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:56:58,831 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-28 05:56:59,242 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-28 05:56:59,242 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:59,242 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:56:59,243 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:56:59,243 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:56:59,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:59,254 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-28 05:56:59,254 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:56:59,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:59,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:59,255 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:56:59,255 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:56:59,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:59,260 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-28 05:56:59,260 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:56:59,261 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:59,261 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:59,261 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:59,262 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:59,262 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:56:59,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 299 transitions. [2022-04-28 05:56:59,266 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 299 transitions. Word has length 74 [2022-04-28 05:56:59,267 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:59,267 INFO L495 AbstractCegarLoop]: Abstraction has 212 states and 299 transitions. [2022-04-28 05:56:59,267 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:56:59,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 212 states and 299 transitions. [2022-04-28 05:56:59,699 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:56:59,699 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:56:59,700 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-28 05:56:59,700 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:59,700 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:56:59,719 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:56:59,900 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:56:59,900 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:59,901 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:59,901 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 1 times [2022-04-28 05:56:59,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:59,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1074246900] [2022-04-28 05:56:59,901 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:59,901 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 2 times [2022-04-28 05:56:59,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:59,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240909131] [2022-04-28 05:56:59,901 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:59,902 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:59,911 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:59,911 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [27713346] [2022-04-28 05:56:59,911 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:59,911 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:59,912 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:59,917 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:56:59,919 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:56:59,973 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:59,973 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:59,974 INFO L263 TraceCheckSpWp]: Trace formula consists of 209 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 05:56:59,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:59,982 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:00,138 INFO L272 TraceCheckUtils]: 0: Hoare triple {11959#true} call ULTIMATE.init(); {11959#true} is VALID [2022-04-28 05:57:00,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {11959#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {11959#true} is VALID [2022-04-28 05:57:00,139 INFO L290 TraceCheckUtils]: 2: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,139 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11959#true} {11959#true} #112#return; {11959#true} is VALID [2022-04-28 05:57:00,139 INFO L272 TraceCheckUtils]: 4: Hoare triple {11959#true} call #t~ret6 := main(); {11959#true} is VALID [2022-04-28 05:57:00,140 INFO L290 TraceCheckUtils]: 5: Hoare triple {11959#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11959#true} is VALID [2022-04-28 05:57:00,140 INFO L272 TraceCheckUtils]: 6: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,140 INFO L290 TraceCheckUtils]: 8: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,140 INFO L290 TraceCheckUtils]: 9: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11959#true} {11959#true} #94#return; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L290 TraceCheckUtils]: 11: Hoare triple {11959#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L272 TraceCheckUtils]: 12: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L290 TraceCheckUtils]: 13: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L290 TraceCheckUtils]: 14: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L290 TraceCheckUtils]: 15: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11959#true} {11959#true} #96#return; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L272 TraceCheckUtils]: 17: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L290 TraceCheckUtils]: 18: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,141 INFO L290 TraceCheckUtils]: 19: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 20: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11959#true} {11959#true} #98#return; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L272 TraceCheckUtils]: 22: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 23: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 24: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 25: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11959#true} {11959#true} #100#return; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 27: Hoare triple {11959#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 28: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 29: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-28 05:57:00,142 INFO L290 TraceCheckUtils]: 30: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 31: Hoare triple {11959#true} assume !(~c~0 >= ~b~0); {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 32: Hoare triple {11959#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 33: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 34: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 35: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 36: Hoare triple {11959#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 37: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L272 TraceCheckUtils]: 38: Hoare triple {11959#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 39: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,143 INFO L290 TraceCheckUtils]: 40: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,144 INFO L290 TraceCheckUtils]: 41: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,144 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11959#true} {11959#true} #102#return; {11959#true} is VALID [2022-04-28 05:57:00,144 INFO L272 TraceCheckUtils]: 43: Hoare triple {11959#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,144 INFO L290 TraceCheckUtils]: 44: Hoare triple {11959#true} ~cond := #in~cond; {12096#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:00,159 INFO L290 TraceCheckUtils]: 45: Hoare triple {12096#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:00,160 INFO L290 TraceCheckUtils]: 46: Hoare triple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:00,160 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} {11959#true} #104#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,160 INFO L272 TraceCheckUtils]: 48: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,160 INFO L290 TraceCheckUtils]: 49: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,160 INFO L290 TraceCheckUtils]: 50: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,161 INFO L290 TraceCheckUtils]: 51: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,161 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,161 INFO L272 TraceCheckUtils]: 53: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:00,161 INFO L290 TraceCheckUtils]: 54: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:00,161 INFO L290 TraceCheckUtils]: 55: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:00,161 INFO L290 TraceCheckUtils]: 56: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:00,162 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,162 INFO L290 TraceCheckUtils]: 58: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,163 INFO L290 TraceCheckUtils]: 59: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,163 INFO L290 TraceCheckUtils]: 60: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,164 INFO L290 TraceCheckUtils]: 61: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:00,164 INFO L290 TraceCheckUtils]: 62: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:00,164 INFO L290 TraceCheckUtils]: 63: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:00,165 INFO L290 TraceCheckUtils]: 64: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:00,165 INFO L290 TraceCheckUtils]: 65: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:00,166 INFO L290 TraceCheckUtils]: 66: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:00,166 INFO L290 TraceCheckUtils]: 67: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:00,167 INFO L272 TraceCheckUtils]: 68: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:00,167 INFO L290 TraceCheckUtils]: 69: Hoare triple {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12176#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:00,167 INFO L290 TraceCheckUtils]: 70: Hoare triple {12176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11960#false} is VALID [2022-04-28 05:57:00,169 INFO L290 TraceCheckUtils]: 71: Hoare triple {11960#false} assume !false; {11960#false} is VALID [2022-04-28 05:57:00,169 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:57:00,169 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:57:13,384 INFO L290 TraceCheckUtils]: 71: Hoare triple {11960#false} assume !false; {11960#false} is VALID [2022-04-28 05:57:13,384 INFO L290 TraceCheckUtils]: 70: Hoare triple {12176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11960#false} is VALID [2022-04-28 05:57:13,385 INFO L290 TraceCheckUtils]: 69: Hoare triple {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12176#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:13,385 INFO L272 TraceCheckUtils]: 68: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:13,386 INFO L290 TraceCheckUtils]: 67: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:13,386 INFO L290 TraceCheckUtils]: 66: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:13,386 INFO L290 TraceCheckUtils]: 65: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:13,387 INFO L290 TraceCheckUtils]: 64: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:13,387 INFO L290 TraceCheckUtils]: 63: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:13,388 INFO L290 TraceCheckUtils]: 62: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:13,388 INFO L290 TraceCheckUtils]: 61: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,388 INFO L290 TraceCheckUtils]: 60: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,389 INFO L290 TraceCheckUtils]: 59: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,389 INFO L290 TraceCheckUtils]: 58: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,390 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,390 INFO L290 TraceCheckUtils]: 56: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,390 INFO L290 TraceCheckUtils]: 55: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,390 INFO L290 TraceCheckUtils]: 54: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,390 INFO L272 TraceCheckUtils]: 53: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,392 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,392 INFO L290 TraceCheckUtils]: 51: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,392 INFO L290 TraceCheckUtils]: 50: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,392 INFO L290 TraceCheckUtils]: 49: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,392 INFO L272 TraceCheckUtils]: 48: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,393 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} {11959#true} #104#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:13,393 INFO L290 TraceCheckUtils]: 46: Hoare triple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:13,393 INFO L290 TraceCheckUtils]: 45: Hoare triple {12264#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 44: Hoare triple {11959#true} ~cond := #in~cond; {12264#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:13,394 INFO L272 TraceCheckUtils]: 43: Hoare triple {11959#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11959#true} {11959#true} #102#return; {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 41: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 40: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 39: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L272 TraceCheckUtils]: 38: Hoare triple {11959#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 37: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 36: Hoare triple {11959#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11959#true} is VALID [2022-04-28 05:57:13,394 INFO L290 TraceCheckUtils]: 35: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 34: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 33: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 32: Hoare triple {11959#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 31: Hoare triple {11959#true} assume !(~c~0 >= ~b~0); {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 30: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 29: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 28: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 27: Hoare triple {11959#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11959#true} {11959#true} #100#return; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 25: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,395 INFO L290 TraceCheckUtils]: 24: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 23: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L272 TraceCheckUtils]: 22: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11959#true} {11959#true} #98#return; {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 20: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 19: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 18: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L272 TraceCheckUtils]: 17: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11959#true} {11959#true} #96#return; {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 15: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 14: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,396 INFO L290 TraceCheckUtils]: 13: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L272 TraceCheckUtils]: 12: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L290 TraceCheckUtils]: 11: Hoare triple {11959#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11959#true} {11959#true} #94#return; {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L290 TraceCheckUtils]: 9: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L290 TraceCheckUtils]: 8: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L290 TraceCheckUtils]: 7: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L272 TraceCheckUtils]: 6: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L290 TraceCheckUtils]: 5: Hoare triple {11959#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L272 TraceCheckUtils]: 4: Hoare triple {11959#true} call #t~ret6 := main(); {11959#true} is VALID [2022-04-28 05:57:13,397 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11959#true} {11959#true} #112#return; {11959#true} is VALID [2022-04-28 05:57:13,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:57:13,398 INFO L290 TraceCheckUtils]: 1: Hoare triple {11959#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {11959#true} is VALID [2022-04-28 05:57:13,398 INFO L272 TraceCheckUtils]: 0: Hoare triple {11959#true} call ULTIMATE.init(); {11959#true} is VALID [2022-04-28 05:57:13,398 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:57:13,398 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:13,398 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1240909131] [2022-04-28 05:57:13,398 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:13,398 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [27713346] [2022-04-28 05:57:13,398 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [27713346] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:57:13,399 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:57:13,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:57:13,399 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:13,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1074246900] [2022-04-28 05:57:13,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1074246900] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:13,399 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:13,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:57:13,399 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1124798598] [2022-04-28 05:57:13,399 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:13,400 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:57:13,400 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:13,400 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:57:13,435 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:57:13,435 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:57:13,435 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:13,435 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:57:13,435 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:57:13,435 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:57:14,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:14,282 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-04-28 05:57:14,283 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:57:14,283 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:57:14,283 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:14,283 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:57:14,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-28 05:57:14,284 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:57:14,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-28 05:57:14,284 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-28 05:57:14,326 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:57:14,330 INFO L225 Difference]: With dead ends: 226 [2022-04-28 05:57:14,330 INFO L226 Difference]: Without dead ends: 224 [2022-04-28 05:57:14,330 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:57:14,331 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 21 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 122 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:14,331 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 173 Invalid, 122 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:57:14,331 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-28 05:57:14,877 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-04-28 05:57:14,877 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:14,878 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:57:14,878 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:57:14,878 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:57:14,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:14,883 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-28 05:57:14,883 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:57:14,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:14,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:14,884 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:57:14,884 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:57:14,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:14,888 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-28 05:57:14,888 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:57:14,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:14,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:14,889 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:14,889 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:14,889 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:57:14,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 308 transitions. [2022-04-28 05:57:14,894 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 308 transitions. Word has length 72 [2022-04-28 05:57:14,894 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:14,894 INFO L495 AbstractCegarLoop]: Abstraction has 224 states and 308 transitions. [2022-04-28 05:57:14,894 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:57:14,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 308 transitions. [2022-04-28 05:57:15,398 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:57:15,398 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:57:15,399 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-28 05:57:15,399 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:15,399 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:57:15,415 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-28 05:57:15,599 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:57:15,600 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:15,600 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:15,600 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 3 times [2022-04-28 05:57:15,600 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:15,600 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [763988205] [2022-04-28 05:57:15,601 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:15,601 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 4 times [2022-04-28 05:57:15,601 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:15,601 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [323930241] [2022-04-28 05:57:15,601 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:15,601 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:15,610 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:15,611 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1815049602] [2022-04-28 05:57:15,611 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:57:15,611 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:15,611 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:15,612 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:57:15,613 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:57:15,651 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:57:15,652 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:15,652 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 05:57:15,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:15,663 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:15,854 INFO L272 TraceCheckUtils]: 0: Hoare triple {13754#true} call ULTIMATE.init(); {13754#true} is VALID [2022-04-28 05:57:15,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {13754#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {13754#true} is VALID [2022-04-28 05:57:15,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,854 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13754#true} {13754#true} #112#return; {13754#true} is VALID [2022-04-28 05:57:15,854 INFO L272 TraceCheckUtils]: 4: Hoare triple {13754#true} call #t~ret6 := main(); {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {13754#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {13754#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 7: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 8: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 9: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13754#true} {13754#true} #94#return; {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 11: Hoare triple {13754#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L272 TraceCheckUtils]: 12: Hoare triple {13754#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,855 INFO L290 TraceCheckUtils]: 14: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 15: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13754#true} {13754#true} #96#return; {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L272 TraceCheckUtils]: 17: Hoare triple {13754#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 18: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 19: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 20: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13754#true} {13754#true} #98#return; {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L272 TraceCheckUtils]: 22: Hoare triple {13754#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 23: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 24: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,856 INFO L290 TraceCheckUtils]: 25: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13754#true} {13754#true} #100#return; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 27: Hoare triple {13754#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 28: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {13754#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 30: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 31: Hoare triple {13754#true} assume !(~c~0 >= ~b~0); {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {13754#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 33: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 34: Hoare triple {13754#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13754#true} is VALID [2022-04-28 05:57:15,857 INFO L290 TraceCheckUtils]: 35: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:57:15,858 INFO L290 TraceCheckUtils]: 36: Hoare triple {13754#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:57:15,858 INFO L290 TraceCheckUtils]: 37: Hoare triple {13867#(<= main_~v~0 main_~b~0)} assume !false; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:57:15,858 INFO L272 TraceCheckUtils]: 38: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,858 INFO L290 TraceCheckUtils]: 39: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,858 INFO L290 TraceCheckUtils]: 40: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,858 INFO L290 TraceCheckUtils]: 41: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,859 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #102#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:57:15,859 INFO L272 TraceCheckUtils]: 43: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,859 INFO L290 TraceCheckUtils]: 44: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,859 INFO L290 TraceCheckUtils]: 45: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,859 INFO L290 TraceCheckUtils]: 46: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,860 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #104#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:57:15,860 INFO L272 TraceCheckUtils]: 48: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,860 INFO L290 TraceCheckUtils]: 49: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,860 INFO L290 TraceCheckUtils]: 50: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,860 INFO L290 TraceCheckUtils]: 51: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,860 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #106#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:57:15,860 INFO L272 TraceCheckUtils]: 53: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:57:15,861 INFO L290 TraceCheckUtils]: 54: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:57:15,861 INFO L290 TraceCheckUtils]: 55: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:57:15,861 INFO L290 TraceCheckUtils]: 56: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:57:15,861 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #108#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:57:15,861 INFO L290 TraceCheckUtils]: 58: Hoare triple {13867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {13934#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 05:57:15,862 INFO L290 TraceCheckUtils]: 59: Hoare triple {13934#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13938#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:57:15,862 INFO L290 TraceCheckUtils]: 60: Hoare triple {13938#(< main_~c~0 main_~b~0)} assume !false; {13938#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:57:15,862 INFO L290 TraceCheckUtils]: 61: Hoare triple {13938#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 62: Hoare triple {13755#false} assume !false; {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L272 TraceCheckUtils]: 63: Hoare triple {13755#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 64: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 65: Hoare triple {13755#false} assume !(0 == ~cond); {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 66: Hoare triple {13755#false} assume true; {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13755#false} {13755#false} #102#return; {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L272 TraceCheckUtils]: 68: Hoare triple {13755#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 69: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 70: Hoare triple {13755#false} assume !(0 == ~cond); {13755#false} is VALID [2022-04-28 05:57:15,863 INFO L290 TraceCheckUtils]: 71: Hoare triple {13755#false} assume true; {13755#false} is VALID [2022-04-28 05:57:15,864 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13755#false} {13755#false} #104#return; {13755#false} is VALID [2022-04-28 05:57:15,864 INFO L272 TraceCheckUtils]: 73: Hoare triple {13755#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13755#false} is VALID [2022-04-28 05:57:15,864 INFO L290 TraceCheckUtils]: 74: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-28 05:57:15,864 INFO L290 TraceCheckUtils]: 75: Hoare triple {13755#false} assume 0 == ~cond; {13755#false} is VALID [2022-04-28 05:57:15,864 INFO L290 TraceCheckUtils]: 76: Hoare triple {13755#false} assume !false; {13755#false} is VALID [2022-04-28 05:57:15,864 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:57:15,864 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:57:15,864 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:15,865 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [323930241] [2022-04-28 05:57:15,865 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:15,865 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1815049602] [2022-04-28 05:57:15,865 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1815049602] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:15,865 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:15,865 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:57:15,865 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:15,865 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [763988205] [2022-04-28 05:57:15,865 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [763988205] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:15,865 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:15,865 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:57:15,866 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1861607147] [2022-04-28 05:57:15,866 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:15,866 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:57:15,866 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:15,866 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:57:15,894 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:57:15,894 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:57:15,894 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:15,894 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:57:15,894 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:57:15,894 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:57:16,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:16,609 INFO L93 Difference]: Finished difference Result 367 states and 500 transitions. [2022-04-28 05:57:16,609 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:57:16,610 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:57:16,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:16,610 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:57:16,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-28 05:57:16,611 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:57:16,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-28 05:57:16,611 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 85 transitions. [2022-04-28 05:57:16,663 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:57:16,667 INFO L225 Difference]: With dead ends: 367 [2022-04-28 05:57:16,667 INFO L226 Difference]: Without dead ends: 230 [2022-04-28 05:57:16,667 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:57:16,668 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:57:16,668 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:57:16,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-28 05:57:17,021 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 214. [2022-04-28 05:57:17,021 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:17,022 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:57:17,022 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:57:17,022 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:57:17,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:17,026 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-28 05:57:17,026 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-28 05:57:17,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:17,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:17,027 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:57:17,028 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:57:17,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:17,031 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-28 05:57:17,032 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-28 05:57:17,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:17,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:17,032 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:17,032 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:17,033 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:57:17,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 289 transitions. [2022-04-28 05:57:17,037 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 289 transitions. Word has length 77 [2022-04-28 05:57:17,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:17,038 INFO L495 AbstractCegarLoop]: Abstraction has 214 states and 289 transitions. [2022-04-28 05:57:17,038 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:57:17,038 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 214 states and 289 transitions. [2022-04-28 05:57:17,448 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:57:17,448 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 289 transitions. [2022-04-28 05:57:17,467 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-28 05:57:17,467 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:17,467 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:57:17,485 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:57:17,683 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:57:17,683 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:17,683 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:17,683 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 5 times [2022-04-28 05:57:17,683 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:17,683 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1190749496] [2022-04-28 05:57:17,684 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:17,684 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 6 times [2022-04-28 05:57:17,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:17,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2067169534] [2022-04-28 05:57:17,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:17,684 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:17,695 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:17,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [563834028] [2022-04-28 05:57:17,695 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:57:17,695 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:17,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:17,699 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:57:17,700 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:57:17,746 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:57:17,747 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:17,748 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:57:17,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:17,757 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:18,503 INFO L272 TraceCheckUtils]: 0: Hoare triple {15614#true} call ULTIMATE.init(); {15614#true} is VALID [2022-04-28 05:57:18,503 INFO L290 TraceCheckUtils]: 1: Hoare triple {15614#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {15614#true} is VALID [2022-04-28 05:57:18,503 INFO L290 TraceCheckUtils]: 2: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,503 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15614#true} {15614#true} #112#return; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L272 TraceCheckUtils]: 4: Hoare triple {15614#true} call #t~ret6 := main(); {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 5: Hoare triple {15614#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L272 TraceCheckUtils]: 6: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 7: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 8: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 9: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15614#true} {15614#true} #94#return; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 11: Hoare triple {15614#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L272 TraceCheckUtils]: 12: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 13: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,504 INFO L290 TraceCheckUtils]: 14: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,507 INFO L290 TraceCheckUtils]: 15: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15614#true} {15614#true} #96#return; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L272 TraceCheckUtils]: 17: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L290 TraceCheckUtils]: 18: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L290 TraceCheckUtils]: 19: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L290 TraceCheckUtils]: 20: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15614#true} {15614#true} #98#return; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L272 TraceCheckUtils]: 22: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L290 TraceCheckUtils]: 24: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L290 TraceCheckUtils]: 25: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,508 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15614#true} {15614#true} #100#return; {15614#true} is VALID [2022-04-28 05:57:18,509 INFO L290 TraceCheckUtils]: 27: Hoare triple {15614#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:57:18,509 INFO L290 TraceCheckUtils]: 28: Hoare triple {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:57:18,510 INFO L290 TraceCheckUtils]: 29: Hoare triple {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:57:18,510 INFO L290 TraceCheckUtils]: 30: Hoare triple {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:57:18,510 INFO L290 TraceCheckUtils]: 31: Hoare triple {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:57:18,511 INFO L290 TraceCheckUtils]: 32: Hoare triple {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:57:18,511 INFO L290 TraceCheckUtils]: 33: Hoare triple {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:57:18,512 INFO L290 TraceCheckUtils]: 34: Hoare triple {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:57:18,512 INFO L290 TraceCheckUtils]: 35: Hoare triple {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !false; {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:57:18,512 INFO L290 TraceCheckUtils]: 36: Hoare triple {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,513 INFO L290 TraceCheckUtils]: 37: Hoare triple {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,513 INFO L272 TraceCheckUtils]: 38: Hoare triple {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,513 INFO L290 TraceCheckUtils]: 39: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,513 INFO L290 TraceCheckUtils]: 40: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,513 INFO L290 TraceCheckUtils]: 41: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,513 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15614#true} {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,514 INFO L272 TraceCheckUtils]: 43: Hoare triple {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,514 INFO L290 TraceCheckUtils]: 44: Hoare triple {15614#true} ~cond := #in~cond; {15756#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:18,514 INFO L290 TraceCheckUtils]: 45: Hoare triple {15756#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:18,514 INFO L290 TraceCheckUtils]: 46: Hoare triple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:18,515 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,515 INFO L272 TraceCheckUtils]: 48: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,515 INFO L290 TraceCheckUtils]: 49: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,515 INFO L290 TraceCheckUtils]: 50: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,515 INFO L290 TraceCheckUtils]: 51: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,516 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15614#true} {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,516 INFO L272 TraceCheckUtils]: 53: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,516 INFO L290 TraceCheckUtils]: 54: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,516 INFO L290 TraceCheckUtils]: 55: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,516 INFO L290 TraceCheckUtils]: 56: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,517 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15614#true} {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,517 INFO L290 TraceCheckUtils]: 58: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:57:18,518 INFO L290 TraceCheckUtils]: 59: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:18,518 INFO L290 TraceCheckUtils]: 60: Hoare triple {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:18,518 INFO L290 TraceCheckUtils]: 61: Hoare triple {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:18,520 INFO L290 TraceCheckUtils]: 62: Hoare triple {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-28 05:57:18,527 INFO L290 TraceCheckUtils]: 63: Hoare triple {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} assume !false; {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-28 05:57:18,528 INFO L290 TraceCheckUtils]: 64: Hoare triple {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-28 05:57:18,528 INFO L290 TraceCheckUtils]: 65: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} assume !false; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-28 05:57:18,528 INFO L290 TraceCheckUtils]: 66: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-28 05:57:18,529 INFO L290 TraceCheckUtils]: 67: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} assume !false; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-28 05:57:18,529 INFO L272 TraceCheckUtils]: 68: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:18,529 INFO L290 TraceCheckUtils]: 69: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:18,529 INFO L290 TraceCheckUtils]: 70: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:18,529 INFO L290 TraceCheckUtils]: 71: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:18,529 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15614#true} {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} #102#return; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-28 05:57:18,530 INFO L272 TraceCheckUtils]: 73: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:18,530 INFO L290 TraceCheckUtils]: 74: Hoare triple {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15853#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:18,530 INFO L290 TraceCheckUtils]: 75: Hoare triple {15853#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15615#false} is VALID [2022-04-28 05:57:18,531 INFO L290 TraceCheckUtils]: 76: Hoare triple {15615#false} assume !false; {15615#false} is VALID [2022-04-28 05:57:18,531 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:57:18,531 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:57:39,417 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:57:39,503 INFO L290 TraceCheckUtils]: 76: Hoare triple {15615#false} assume !false; {15615#false} is VALID [2022-04-28 05:57:39,504 INFO L290 TraceCheckUtils]: 75: Hoare triple {15853#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15615#false} is VALID [2022-04-28 05:57:39,504 INFO L290 TraceCheckUtils]: 74: Hoare triple {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15853#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:39,505 INFO L272 TraceCheckUtils]: 73: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:39,505 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15614#true} {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:39,506 INFO L290 TraceCheckUtils]: 71: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:39,506 INFO L290 TraceCheckUtils]: 70: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:39,506 INFO L290 TraceCheckUtils]: 69: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:39,506 INFO L272 TraceCheckUtils]: 68: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:39,507 INFO L290 TraceCheckUtils]: 67: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:39,508 INFO L290 TraceCheckUtils]: 66: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:39,508 INFO L290 TraceCheckUtils]: 65: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:39,508 INFO L290 TraceCheckUtils]: 64: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:39,509 INFO L290 TraceCheckUtils]: 63: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:40,447 INFO L290 TraceCheckUtils]: 62: Hoare triple {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:57:40,448 INFO L290 TraceCheckUtils]: 61: Hoare triple {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,448 INFO L290 TraceCheckUtils]: 60: Hoare triple {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,514 INFO L290 TraceCheckUtils]: 59: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,515 INFO L290 TraceCheckUtils]: 58: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,516 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15614#true} {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,516 INFO L290 TraceCheckUtils]: 56: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:40,516 INFO L290 TraceCheckUtils]: 55: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:40,516 INFO L290 TraceCheckUtils]: 54: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:40,516 INFO L272 TraceCheckUtils]: 53: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:40,517 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15614#true} {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,517 INFO L290 TraceCheckUtils]: 51: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:40,517 INFO L290 TraceCheckUtils]: 50: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:40,517 INFO L290 TraceCheckUtils]: 49: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:40,517 INFO L272 TraceCheckUtils]: 48: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:40,518 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:57:40,518 INFO L290 TraceCheckUtils]: 46: Hoare triple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:40,519 INFO L290 TraceCheckUtils]: 45: Hoare triple {15960#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:40,519 INFO L290 TraceCheckUtils]: 44: Hoare triple {15614#true} ~cond := #in~cond; {15960#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:40,519 INFO L272 TraceCheckUtils]: 43: Hoare triple {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:40,520 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15614#true} {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:40,520 INFO L290 TraceCheckUtils]: 41: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:40,520 INFO L290 TraceCheckUtils]: 40: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:40,520 INFO L290 TraceCheckUtils]: 39: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:40,520 INFO L272 TraceCheckUtils]: 38: Hoare triple {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:40,521 INFO L290 TraceCheckUtils]: 37: Hoare triple {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:40,522 INFO L290 TraceCheckUtils]: 36: Hoare triple {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:40,522 INFO L290 TraceCheckUtils]: 35: Hoare triple {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:57:40,523 INFO L290 TraceCheckUtils]: 34: Hoare triple {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:57:40,523 INFO L290 TraceCheckUtils]: 33: Hoare triple {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:57:42,525 WARN L290 TraceCheckUtils]: 32: Hoare triple {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is UNKNOWN [2022-04-28 05:57:42,526 INFO L290 TraceCheckUtils]: 31: Hoare triple {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:57:42,527 INFO L290 TraceCheckUtils]: 30: Hoare triple {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:57:42,528 INFO L290 TraceCheckUtils]: 29: Hoare triple {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:57:42,528 INFO L290 TraceCheckUtils]: 28: Hoare triple {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:42,529 INFO L290 TraceCheckUtils]: 27: Hoare triple {15614#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:42,529 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15614#true} {15614#true} #100#return; {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L290 TraceCheckUtils]: 25: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L290 TraceCheckUtils]: 24: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L290 TraceCheckUtils]: 23: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L272 TraceCheckUtils]: 22: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15614#true} {15614#true} #98#return; {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:42,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 18: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L272 TraceCheckUtils]: 17: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15614#true} {15614#true} #96#return; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 15: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 14: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 13: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L272 TraceCheckUtils]: 12: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 11: Hoare triple {15614#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15614#true} {15614#true} #94#return; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 9: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:42,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L290 TraceCheckUtils]: 7: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L272 TraceCheckUtils]: 6: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L290 TraceCheckUtils]: 5: Hoare triple {15614#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L272 TraceCheckUtils]: 4: Hoare triple {15614#true} call #t~ret6 := main(); {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15614#true} {15614#true} #112#return; {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L290 TraceCheckUtils]: 1: Hoare triple {15614#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {15614#true} is VALID [2022-04-28 05:57:42,531 INFO L272 TraceCheckUtils]: 0: Hoare triple {15614#true} call ULTIMATE.init(); {15614#true} is VALID [2022-04-28 05:57:42,532 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 18 proven. 26 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:57:42,532 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:42,532 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2067169534] [2022-04-28 05:57:42,532 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:42,532 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [563834028] [2022-04-28 05:57:42,532 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [563834028] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:57:42,532 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:57:42,532 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 24 [2022-04-28 05:57:42,533 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:42,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1190749496] [2022-04-28 05:57:42,533 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1190749496] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:42,533 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:42,533 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:57:42,533 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1999019784] [2022-04-28 05:57:42,533 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:42,533 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-28 05:57:42,534 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:42,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:57:42,582 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:57:42,582 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:57:42,582 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:42,583 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:57:42,583 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=465, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:57:42,583 INFO L87 Difference]: Start difference. First operand 214 states and 289 transitions. Second operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:57:45,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:45,058 INFO L93 Difference]: Finished difference Result 285 states and 377 transitions. [2022-04-28 05:57:45,058 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:57:45,058 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-28 05:57:45,058 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:45,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:57:45,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-28 05:57:45,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:57:45,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-28 05:57:45,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 148 transitions. [2022-04-28 05:57:45,198 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:57:45,202 INFO L225 Difference]: With dead ends: 285 [2022-04-28 05:57:45,202 INFO L226 Difference]: Without dead ends: 283 [2022-04-28 05:57:45,203 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 130 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=150, Invalid=780, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:57:45,203 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 64 mSDsluCounter, 291 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 341 SdHoareTripleChecker+Invalid, 725 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:45,203 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 341 Invalid, 725 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 679 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:57:45,204 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-04-28 05:57:45,953 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 265. [2022-04-28 05:57:45,954 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:45,954 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-28 05:57:45,954 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-28 05:57:45,955 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-28 05:57:45,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:45,960 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-28 05:57:45,960 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-28 05:57:45,961 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:45,961 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:45,961 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-28 05:57:45,961 INFO L87 Difference]: Start difference. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-28 05:57:45,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:45,966 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-28 05:57:45,966 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-28 05:57:45,967 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:45,967 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:45,967 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:45,967 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:45,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-28 05:57:45,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 357 transitions. [2022-04-28 05:57:45,973 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 357 transitions. Word has length 77 [2022-04-28 05:57:45,973 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:45,973 INFO L495 AbstractCegarLoop]: Abstraction has 265 states and 357 transitions. [2022-04-28 05:57:45,973 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:57:45,973 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 357 transitions. [2022-04-28 05:57:46,626 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 357 edges. 357 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:46,627 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 357 transitions. [2022-04-28 05:57:46,627 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-28 05:57:46,627 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:46,628 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:57:46,646 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-28 05:57:46,828 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:57:46,828 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:46,828 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:46,829 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 1 times [2022-04-28 05:57:46,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:46,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1954912580] [2022-04-28 05:57:46,829 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:46,829 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 2 times [2022-04-28 05:57:46,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:46,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [665495266] [2022-04-28 05:57:46,829 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:46,830 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:46,839 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:46,839 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1026933366] [2022-04-28 05:57:46,839 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:57:46,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:46,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:46,855 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:57:46,870 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:57:46,918 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:57:46,918 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:46,919 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-28 05:57:46,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:46,932 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:47,768 INFO L272 TraceCheckUtils]: 0: Hoare triple {17779#true} call ULTIMATE.init(); {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {17779#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17779#true} {17779#true} #112#return; {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L272 TraceCheckUtils]: 4: Hoare triple {17779#true} call #t~ret6 := main(); {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L290 TraceCheckUtils]: 5: Hoare triple {17779#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L272 TraceCheckUtils]: 6: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L290 TraceCheckUtils]: 7: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L290 TraceCheckUtils]: 8: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L290 TraceCheckUtils]: 9: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,769 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17779#true} {17779#true} #94#return; {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 11: Hoare triple {17779#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L272 TraceCheckUtils]: 12: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 13: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 14: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 15: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17779#true} {17779#true} #96#return; {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L272 TraceCheckUtils]: 17: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 18: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 19: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,770 INFO L290 TraceCheckUtils]: 20: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17779#true} {17779#true} #98#return; {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L272 TraceCheckUtils]: 22: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L290 TraceCheckUtils]: 23: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L290 TraceCheckUtils]: 24: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L290 TraceCheckUtils]: 25: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17779#true} {17779#true} #100#return; {17779#true} is VALID [2022-04-28 05:57:47,771 INFO L290 TraceCheckUtils]: 27: Hoare triple {17779#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,772 INFO L290 TraceCheckUtils]: 28: Hoare triple {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,772 INFO L290 TraceCheckUtils]: 29: Hoare triple {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,773 INFO L290 TraceCheckUtils]: 31: Hoare triple {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,773 INFO L290 TraceCheckUtils]: 32: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,773 INFO L272 TraceCheckUtils]: 33: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,774 INFO L290 TraceCheckUtils]: 34: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,774 INFO L290 TraceCheckUtils]: 35: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,774 INFO L290 TraceCheckUtils]: 36: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,774 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,774 INFO L272 TraceCheckUtils]: 38: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,775 INFO L290 TraceCheckUtils]: 39: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,775 INFO L290 TraceCheckUtils]: 40: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,775 INFO L290 TraceCheckUtils]: 41: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,775 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,776 INFO L272 TraceCheckUtils]: 43: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,776 INFO L290 TraceCheckUtils]: 44: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,776 INFO L290 TraceCheckUtils]: 45: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,776 INFO L290 TraceCheckUtils]: 46: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,776 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,777 INFO L272 TraceCheckUtils]: 48: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,777 INFO L290 TraceCheckUtils]: 49: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,777 INFO L290 TraceCheckUtils]: 50: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,777 INFO L290 TraceCheckUtils]: 51: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,777 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,778 INFO L290 TraceCheckUtils]: 53: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,778 INFO L290 TraceCheckUtils]: 54: Hoare triple {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,778 INFO L272 TraceCheckUtils]: 55: Hoare triple {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,779 INFO L290 TraceCheckUtils]: 56: Hoare triple {17779#true} ~cond := #in~cond; {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:47,779 INFO L290 TraceCheckUtils]: 57: Hoare triple {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,779 INFO L290 TraceCheckUtils]: 58: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,780 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,780 INFO L272 TraceCheckUtils]: 60: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,781 INFO L290 TraceCheckUtils]: 61: Hoare triple {17779#true} ~cond := #in~cond; {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:47,781 INFO L290 TraceCheckUtils]: 62: Hoare triple {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,781 INFO L290 TraceCheckUtils]: 63: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,782 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,782 INFO L272 TraceCheckUtils]: 65: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,782 INFO L290 TraceCheckUtils]: 66: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,782 INFO L290 TraceCheckUtils]: 67: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,782 INFO L290 TraceCheckUtils]: 68: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,783 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17779#true} {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,783 INFO L272 TraceCheckUtils]: 70: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:57:47,783 INFO L290 TraceCheckUtils]: 71: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:57:47,783 INFO L290 TraceCheckUtils]: 72: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:57:47,783 INFO L290 TraceCheckUtils]: 73: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:57:47,784 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17779#true} {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,784 INFO L290 TraceCheckUtils]: 75: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,785 INFO L290 TraceCheckUtils]: 76: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,785 INFO L290 TraceCheckUtils]: 77: Hoare triple {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,786 INFO L290 TraceCheckUtils]: 78: Hoare triple {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:57:47,786 INFO L290 TraceCheckUtils]: 79: Hoare triple {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:57:47,787 INFO L290 TraceCheckUtils]: 80: Hoare triple {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:57:47,787 INFO L290 TraceCheckUtils]: 81: Hoare triple {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {18036#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:57:47,788 INFO L272 TraceCheckUtils]: 82: Hoare triple {18036#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:47,788 INFO L290 TraceCheckUtils]: 83: Hoare triple {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18044#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:47,788 INFO L290 TraceCheckUtils]: 84: Hoare triple {18044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17780#false} is VALID [2022-04-28 05:57:47,789 INFO L290 TraceCheckUtils]: 85: Hoare triple {17780#false} assume !false; {17780#false} is VALID [2022-04-28 05:57:47,789 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 38 proven. 24 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-28 05:57:47,789 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:24,803 INFO L290 TraceCheckUtils]: 85: Hoare triple {17780#false} assume !false; {17780#false} is VALID [2022-04-28 05:58:24,803 INFO L290 TraceCheckUtils]: 84: Hoare triple {18044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17780#false} is VALID [2022-04-28 05:58:24,803 INFO L290 TraceCheckUtils]: 83: Hoare triple {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18044#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:24,804 INFO L272 TraceCheckUtils]: 82: Hoare triple {18060#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:58:24,804 INFO L290 TraceCheckUtils]: 81: Hoare triple {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {18060#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:58:24,805 INFO L290 TraceCheckUtils]: 80: Hoare triple {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:58:24,952 INFO L290 TraceCheckUtils]: 79: Hoare triple {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:58:24,952 INFO L290 TraceCheckUtils]: 78: Hoare triple {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:24,953 INFO L290 TraceCheckUtils]: 77: Hoare triple {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,225 INFO L290 TraceCheckUtils]: 76: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,226 INFO L290 TraceCheckUtils]: 75: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,227 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17779#true} {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,227 INFO L290 TraceCheckUtils]: 73: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,227 INFO L290 TraceCheckUtils]: 72: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,227 INFO L290 TraceCheckUtils]: 71: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,227 INFO L272 TraceCheckUtils]: 70: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,231 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17779#true} {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,231 INFO L290 TraceCheckUtils]: 68: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,231 INFO L290 TraceCheckUtils]: 67: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,231 INFO L290 TraceCheckUtils]: 66: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,231 INFO L272 TraceCheckUtils]: 65: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,232 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {18118#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,233 INFO L290 TraceCheckUtils]: 63: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:25,233 INFO L290 TraceCheckUtils]: 62: Hoare triple {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:25,233 INFO L290 TraceCheckUtils]: 61: Hoare triple {17779#true} ~cond := #in~cond; {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:58:25,233 INFO L272 TraceCheckUtils]: 60: Hoare triple {18118#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,234 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {18118#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,234 INFO L290 TraceCheckUtils]: 58: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:25,235 INFO L290 TraceCheckUtils]: 57: Hoare triple {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:25,235 INFO L290 TraceCheckUtils]: 56: Hoare triple {17779#true} ~cond := #in~cond; {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:58:25,235 INFO L272 TraceCheckUtils]: 55: Hoare triple {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,236 INFO L290 TraceCheckUtils]: 54: Hoare triple {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,310 INFO L290 TraceCheckUtils]: 53: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:58:25,311 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #108#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:58:25,311 INFO L290 TraceCheckUtils]: 51: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,311 INFO L290 TraceCheckUtils]: 50: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,311 INFO L290 TraceCheckUtils]: 49: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,311 INFO L272 TraceCheckUtils]: 48: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,312 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #106#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:58:25,312 INFO L290 TraceCheckUtils]: 46: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,312 INFO L290 TraceCheckUtils]: 45: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,312 INFO L290 TraceCheckUtils]: 44: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,312 INFO L272 TraceCheckUtils]: 43: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,313 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:58:25,313 INFO L290 TraceCheckUtils]: 41: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,313 INFO L290 TraceCheckUtils]: 40: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,313 INFO L290 TraceCheckUtils]: 39: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,313 INFO L272 TraceCheckUtils]: 38: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,314 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:58:25,314 INFO L290 TraceCheckUtils]: 36: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,314 INFO L290 TraceCheckUtils]: 35: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,314 INFO L290 TraceCheckUtils]: 34: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,314 INFO L272 TraceCheckUtils]: 33: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,315 INFO L290 TraceCheckUtils]: 32: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:58:25,315 INFO L290 TraceCheckUtils]: 31: Hoare triple {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:58:25,316 INFO L290 TraceCheckUtils]: 30: Hoare triple {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:58:25,317 INFO L290 TraceCheckUtils]: 29: Hoare triple {17779#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:58:25,317 INFO L290 TraceCheckUtils]: 28: Hoare triple {17779#true} assume !false; {17779#true} is VALID [2022-04-28 05:58:25,317 INFO L290 TraceCheckUtils]: 27: Hoare triple {17779#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17779#true} is VALID [2022-04-28 05:58:25,317 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17779#true} {17779#true} #100#return; {17779#true} is VALID [2022-04-28 05:58:25,317 INFO L290 TraceCheckUtils]: 25: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L290 TraceCheckUtils]: 24: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L290 TraceCheckUtils]: 23: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L272 TraceCheckUtils]: 22: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17779#true} {17779#true} #98#return; {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L290 TraceCheckUtils]: 20: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L290 TraceCheckUtils]: 19: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L290 TraceCheckUtils]: 18: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L272 TraceCheckUtils]: 17: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17779#true} {17779#true} #96#return; {17779#true} is VALID [2022-04-28 05:58:25,318 INFO L290 TraceCheckUtils]: 15: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,335 INFO L290 TraceCheckUtils]: 14: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,335 INFO L290 TraceCheckUtils]: 13: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,335 INFO L272 TraceCheckUtils]: 12: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,335 INFO L290 TraceCheckUtils]: 11: Hoare triple {17779#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17779#true} is VALID [2022-04-28 05:58:25,335 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17779#true} {17779#true} #94#return; {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L290 TraceCheckUtils]: 9: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L272 TraceCheckUtils]: 6: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {17779#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L272 TraceCheckUtils]: 4: Hoare triple {17779#true} call #t~ret6 := main(); {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17779#true} {17779#true} #112#return; {17779#true} is VALID [2022-04-28 05:58:25,336 INFO L290 TraceCheckUtils]: 2: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:58:25,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {17779#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {17779#true} is VALID [2022-04-28 05:58:25,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {17779#true} call ULTIMATE.init(); {17779#true} is VALID [2022-04-28 05:58:25,337 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 40 proven. 22 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-28 05:58:25,337 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:25,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [665495266] [2022-04-28 05:58:25,338 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:25,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1026933366] [2022-04-28 05:58:25,338 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1026933366] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:25,338 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:25,338 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 23 [2022-04-28 05:58:25,338 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:25,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1954912580] [2022-04-28 05:58:25,338 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1954912580] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:25,339 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:25,339 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:58:25,339 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1386820000] [2022-04-28 05:58:25,340 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:25,341 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 86 [2022-04-28 05:58:25,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:25,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 05:58:25,410 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:58:25,410 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:58:25,410 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:25,411 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:58:25,411 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=420, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:58:25,412 INFO L87 Difference]: Start difference. First operand 265 states and 357 transitions. Second operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 05:58:29,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:29,042 INFO L93 Difference]: Finished difference Result 348 states and 475 transitions. [2022-04-28 05:58:29,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:58:29,042 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 86 [2022-04-28 05:58:29,043 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:29,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 05:58:29,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-28 05:58:29,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 05:58:29,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-28 05:58:29,049 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 143 transitions. [2022-04-28 05:58:29,155 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:58:29,162 INFO L225 Difference]: With dead ends: 348 [2022-04-28 05:58:29,162 INFO L226 Difference]: Without dead ends: 345 [2022-04-28 05:58:29,164 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 149 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 128 ImplicationChecksByTransitivity, 2.1s TimeCoverageRelationStatistics Valid=112, Invalid=590, Unknown=0, NotChecked=0, Total=702 [2022-04-28 05:58:29,165 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 54 mSDsluCounter, 299 mSDsCounter, 0 mSdLazyCounter, 820 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 351 SdHoareTripleChecker+Invalid, 868 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 820 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:29,165 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [70 Valid, 351 Invalid, 868 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 820 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-28 05:58:29,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 345 states. [2022-04-28 05:58:29,768 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 345 to 330. [2022-04-28 05:58:29,768 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:29,769 INFO L82 GeneralOperation]: Start isEquivalent. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-28 05:58:29,769 INFO L74 IsIncluded]: Start isIncluded. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-28 05:58:29,769 INFO L87 Difference]: Start difference. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-28 05:58:29,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:29,796 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-28 05:58:29,796 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-28 05:58:29,797 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:29,797 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:29,797 INFO L74 IsIncluded]: Start isIncluded. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-28 05:58:29,798 INFO L87 Difference]: Start difference. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-28 05:58:29,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:29,818 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-28 05:58:29,818 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-28 05:58:29,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:29,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:29,819 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:29,819 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:29,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-28 05:58:29,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 330 states to 330 states and 456 transitions. [2022-04-28 05:58:29,826 INFO L78 Accepts]: Start accepts. Automaton has 330 states and 456 transitions. Word has length 86 [2022-04-28 05:58:29,827 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:29,827 INFO L495 AbstractCegarLoop]: Abstraction has 330 states and 456 transitions. [2022-04-28 05:58:29,827 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 05:58:29,827 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 330 states and 456 transitions. [2022-04-28 05:58:30,674 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 456 edges. 456 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:30,674 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 456 transitions. [2022-04-28 05:58:30,675 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:58:30,675 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:30,675 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:58:30,713 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:58:30,875 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:58:30,876 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:30,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:30,876 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 3 times [2022-04-28 05:58:30,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:30,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1711550635] [2022-04-28 05:58:30,877 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:30,877 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 4 times [2022-04-28 05:58:30,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:30,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1038284056] [2022-04-28 05:58:30,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:30,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:30,893 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:30,893 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1203187241] [2022-04-28 05:58:30,893 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:58:30,893 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:30,893 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:30,895 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:58:30,896 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:58:30,944 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:58:30,945 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:30,946 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 76 conjunts are in the unsatisfiable core [2022-04-28 05:58:30,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:30,962 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:09,692 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:17,633 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:23,647 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:28,508 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:33,024 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:38,544 INFO L272 TraceCheckUtils]: 0: Hoare triple {20371#true} call ULTIMATE.init(); {20371#true} is VALID [2022-04-28 05:59:38,544 INFO L290 TraceCheckUtils]: 1: Hoare triple {20371#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {20371#true} is VALID [2022-04-28 05:59:38,544 INFO L290 TraceCheckUtils]: 2: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,544 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20371#true} {20371#true} #112#return; {20371#true} is VALID [2022-04-28 05:59:38,544 INFO L272 TraceCheckUtils]: 4: Hoare triple {20371#true} call #t~ret6 := main(); {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 5: Hoare triple {20371#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L272 TraceCheckUtils]: 6: Hoare triple {20371#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 7: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 8: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 9: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20371#true} {20371#true} #94#return; {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 11: Hoare triple {20371#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L272 TraceCheckUtils]: 12: Hoare triple {20371#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 13: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,545 INFO L290 TraceCheckUtils]: 14: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L290 TraceCheckUtils]: 15: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20371#true} {20371#true} #96#return; {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L272 TraceCheckUtils]: 17: Hoare triple {20371#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L290 TraceCheckUtils]: 20: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20371#true} {20371#true} #98#return; {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L272 TraceCheckUtils]: 22: Hoare triple {20371#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L290 TraceCheckUtils]: 23: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,546 INFO L290 TraceCheckUtils]: 24: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,547 INFO L290 TraceCheckUtils]: 25: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,547 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20371#true} {20371#true} #100#return; {20371#true} is VALID [2022-04-28 05:59:38,547 INFO L290 TraceCheckUtils]: 27: Hoare triple {20371#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:59:38,547 INFO L290 TraceCheckUtils]: 28: Hoare triple {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:59:38,548 INFO L290 TraceCheckUtils]: 29: Hoare triple {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:59:38,548 INFO L290 TraceCheckUtils]: 30: Hoare triple {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:59:38,549 INFO L290 TraceCheckUtils]: 31: Hoare triple {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:59:38,549 INFO L290 TraceCheckUtils]: 32: Hoare triple {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,550 INFO L290 TraceCheckUtils]: 33: Hoare triple {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,550 INFO L290 TraceCheckUtils]: 34: Hoare triple {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,550 INFO L290 TraceCheckUtils]: 35: Hoare triple {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,551 INFO L290 TraceCheckUtils]: 36: Hoare triple {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,551 INFO L290 TraceCheckUtils]: 37: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,551 INFO L272 TraceCheckUtils]: 38: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,551 INFO L290 TraceCheckUtils]: 39: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,552 INFO L290 TraceCheckUtils]: 40: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,552 INFO L290 TraceCheckUtils]: 41: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,552 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #102#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,553 INFO L272 TraceCheckUtils]: 43: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,553 INFO L290 TraceCheckUtils]: 44: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,553 INFO L290 TraceCheckUtils]: 45: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,553 INFO L290 TraceCheckUtils]: 46: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,554 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #104#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,554 INFO L272 TraceCheckUtils]: 48: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,554 INFO L290 TraceCheckUtils]: 49: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,554 INFO L290 TraceCheckUtils]: 50: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,554 INFO L290 TraceCheckUtils]: 51: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,555 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #106#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,555 INFO L272 TraceCheckUtils]: 53: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,555 INFO L290 TraceCheckUtils]: 54: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,555 INFO L290 TraceCheckUtils]: 55: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,555 INFO L290 TraceCheckUtils]: 56: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,556 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #108#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:59:38,557 INFO L290 TraceCheckUtils]: 58: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} is VALID [2022-04-28 05:59:38,557 INFO L290 TraceCheckUtils]: 59: Hoare triple {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} assume !false; {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} is VALID [2022-04-28 05:59:38,557 INFO L272 TraceCheckUtils]: 60: Hoare triple {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,558 INFO L290 TraceCheckUtils]: 61: Hoare triple {20371#true} ~cond := #in~cond; {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:38,558 INFO L290 TraceCheckUtils]: 62: Hoare triple {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:38,558 INFO L290 TraceCheckUtils]: 63: Hoare triple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:38,559 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} #102#return; {20576#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:38,559 INFO L272 TraceCheckUtils]: 65: Hoare triple {20576#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,560 INFO L290 TraceCheckUtils]: 66: Hoare triple {20371#true} ~cond := #in~cond; {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:38,560 INFO L290 TraceCheckUtils]: 67: Hoare triple {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:38,560 INFO L290 TraceCheckUtils]: 68: Hoare triple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:38,561 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} {20576#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:38,561 INFO L272 TraceCheckUtils]: 70: Hoare triple {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,561 INFO L290 TraceCheckUtils]: 71: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:59:38,562 INFO L290 TraceCheckUtils]: 72: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:59:38,562 INFO L290 TraceCheckUtils]: 73: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:59:38,562 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20371#true} {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:38,563 INFO L272 TraceCheckUtils]: 75: Hoare triple {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:59:38,563 INFO L290 TraceCheckUtils]: 76: Hoare triple {20371#true} ~cond := #in~cond; {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:38,563 INFO L290 TraceCheckUtils]: 77: Hoare triple {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:38,563 INFO L290 TraceCheckUtils]: 78: Hoare triple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:38,565 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:38,565 INFO L290 TraceCheckUtils]: 80: Hoare triple {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:38,567 INFO L290 TraceCheckUtils]: 81: Hoare triple {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} is VALID [2022-04-28 05:59:38,568 INFO L290 TraceCheckUtils]: 82: Hoare triple {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} assume !false; {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} is VALID [2022-04-28 05:59:38,568 INFO L290 TraceCheckUtils]: 83: Hoare triple {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} assume !(~c~0 >= ~b~0); {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} is VALID [2022-04-28 05:59:40,570 WARN L290 TraceCheckUtils]: 84: Hoare triple {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} is UNKNOWN [2022-04-28 05:59:40,572 INFO L290 TraceCheckUtils]: 85: Hoare triple {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} assume !false; {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} is VALID [2022-04-28 05:59:40,573 INFO L290 TraceCheckUtils]: 86: Hoare triple {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} assume !(0 != ~b~0); {20647#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (div (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} is VALID [2022-04-28 05:59:40,582 INFO L272 TraceCheckUtils]: 87: Hoare triple {20647#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (div (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20651#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:59:40,582 INFO L290 TraceCheckUtils]: 88: Hoare triple {20651#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20655#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:40,583 INFO L290 TraceCheckUtils]: 89: Hoare triple {20655#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20372#false} is VALID [2022-04-28 05:59:40,583 INFO L290 TraceCheckUtils]: 90: Hoare triple {20372#false} assume !false; {20372#false} is VALID [2022-04-28 05:59:40,583 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 52 proven. 28 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-28 05:59:40,583 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:24,968 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:00:29,971 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:29,971 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1038284056] [2022-04-28 06:00:29,971 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:29,971 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1203187241] [2022-04-28 06:00:29,971 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1203187241] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 06:00:29,971 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 06:00:29,971 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-28 06:00:29,972 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:29,972 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1711550635] [2022-04-28 06:00:29,972 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1711550635] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:29,972 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:29,972 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 06:00:29,972 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [751509109] [2022-04-28 06:00:29,972 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:29,972 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-28 06:00:29,973 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:29,973 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 06:00:32,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 63 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:32,049 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 06:00:32,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:32,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 06:00:32,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=107, Invalid=595, Unknown=0, NotChecked=0, Total=702 [2022-04-28 06:00:32,050 INFO L87 Difference]: Start difference. First operand 330 states and 456 transitions. Second operand has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 06:00:39,254 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.07s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:00:47,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:47,544 INFO L93 Difference]: Finished difference Result 418 states and 579 transitions. [2022-04-28 06:00:47,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 06:00:47,544 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-28 06:00:47,544 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:47,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 06:00:47,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-28 06:00:47,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 06:00:47,548 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-28 06:00:47,548 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 175 transitions. [2022-04-28 06:00:49,998 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 174 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:50,010 INFO L225 Difference]: With dead ends: 418 [2022-04-28 06:00:50,011 INFO L226 Difference]: Without dead ends: 415 [2022-04-28 06:00:50,011 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 98 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 210 ImplicationChecksByTransitivity, 7.2s TimeCoverageRelationStatistics Valid=172, Invalid=950, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 06:00:50,012 INFO L413 NwaCegarLoop]: 59 mSDtfsCounter, 66 mSDsluCounter, 355 mSDsCounter, 0 mSdLazyCounter, 1126 mSolverCounterSat, 66 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 414 SdHoareTripleChecker+Invalid, 1192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 1126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.5s IncrementalHoareTripleChecker+Time [2022-04-28 06:00:50,012 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 414 Invalid, 1192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 1126 Invalid, 0 Unknown, 0 Unchecked, 5.5s Time] [2022-04-28 06:00:50,013 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 415 states. [2022-04-28 06:00:51,384 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 415 to 395. [2022-04-28 06:00:51,384 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:51,385 INFO L82 GeneralOperation]: Start isEquivalent. First operand 415 states. Second operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:00:51,385 INFO L74 IsIncluded]: Start isIncluded. First operand 415 states. Second operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:00:51,385 INFO L87 Difference]: Start difference. First operand 415 states. Second operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:00:51,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:51,395 INFO L93 Difference]: Finished difference Result 415 states and 575 transitions. [2022-04-28 06:00:51,395 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 575 transitions. [2022-04-28 06:00:51,397 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:51,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:51,397 INFO L74 IsIncluded]: Start isIncluded. First operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 415 states. [2022-04-28 06:00:51,398 INFO L87 Difference]: Start difference. First operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 415 states. [2022-04-28 06:00:51,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:51,424 INFO L93 Difference]: Finished difference Result 415 states and 575 transitions. [2022-04-28 06:00:51,424 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 575 transitions. [2022-04-28 06:00:51,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:51,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:51,425 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:51,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:51,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:00:51,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 395 states to 395 states and 555 transitions. [2022-04-28 06:00:51,457 INFO L78 Accepts]: Start accepts. Automaton has 395 states and 555 transitions. Word has length 91 [2022-04-28 06:00:51,457 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:51,457 INFO L495 AbstractCegarLoop]: Abstraction has 395 states and 555 transitions. [2022-04-28 06:00:51,457 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 06:00:51,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 395 states and 555 transitions. [2022-04-28 06:00:53,198 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 555 edges. 555 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:53,198 INFO L276 IsEmpty]: Start isEmpty. Operand 395 states and 555 transitions. [2022-04-28 06:00:53,199 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 06:00:53,199 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:53,199 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 06:00:53,232 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 06:00:53,400 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 06:00:53,401 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:53,401 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:53,401 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 7 times [2022-04-28 06:00:53,401 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:53,401 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [32127903] [2022-04-28 06:00:53,402 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:53,402 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 8 times [2022-04-28 06:00:53,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:53,402 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [501296958] [2022-04-28 06:00:53,402 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:53,402 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:53,413 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:53,413 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1942441292] [2022-04-28 06:00:53,413 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:00:53,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:53,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:53,414 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 06:00:53,415 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 06:00:53,469 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:00:53,470 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:53,471 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-28 06:00:53,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:53,487 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:01:16,206 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:01:34,021 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:01:34,262 INFO L272 TraceCheckUtils]: 0: Hoare triple {23242#true} call ULTIMATE.init(); {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L290 TraceCheckUtils]: 1: Hoare triple {23242#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L290 TraceCheckUtils]: 2: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23242#true} {23242#true} #112#return; {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L272 TraceCheckUtils]: 4: Hoare triple {23242#true} call #t~ret6 := main(); {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L290 TraceCheckUtils]: 5: Hoare triple {23242#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L272 TraceCheckUtils]: 6: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L290 TraceCheckUtils]: 7: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,263 INFO L290 TraceCheckUtils]: 8: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23242#true} {23242#true} #94#return; {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L290 TraceCheckUtils]: 11: Hoare triple {23242#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L272 TraceCheckUtils]: 12: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L290 TraceCheckUtils]: 15: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23242#true} {23242#true} #96#return; {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L272 TraceCheckUtils]: 17: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,264 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L290 TraceCheckUtils]: 19: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L290 TraceCheckUtils]: 20: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23242#true} {23242#true} #98#return; {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L272 TraceCheckUtils]: 22: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L290 TraceCheckUtils]: 23: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L290 TraceCheckUtils]: 24: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L290 TraceCheckUtils]: 25: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,265 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23242#true} {23242#true} #100#return; {23242#true} is VALID [2022-04-28 06:01:34,266 INFO L290 TraceCheckUtils]: 27: Hoare triple {23242#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,266 INFO L290 TraceCheckUtils]: 28: Hoare triple {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,267 INFO L290 TraceCheckUtils]: 29: Hoare triple {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,267 INFO L290 TraceCheckUtils]: 30: Hoare triple {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,267 INFO L290 TraceCheckUtils]: 31: Hoare triple {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,268 INFO L290 TraceCheckUtils]: 32: Hoare triple {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,268 INFO L272 TraceCheckUtils]: 33: Hoare triple {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,268 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:34,269 INFO L290 TraceCheckUtils]: 35: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,269 INFO L290 TraceCheckUtils]: 36: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,270 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,270 INFO L272 TraceCheckUtils]: 38: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,270 INFO L290 TraceCheckUtils]: 39: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:34,271 INFO L290 TraceCheckUtils]: 40: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,271 INFO L290 TraceCheckUtils]: 41: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,272 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,272 INFO L272 TraceCheckUtils]: 43: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,272 INFO L290 TraceCheckUtils]: 44: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,272 INFO L290 TraceCheckUtils]: 45: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,272 INFO L290 TraceCheckUtils]: 46: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,273 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23242#true} {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,273 INFO L272 TraceCheckUtils]: 48: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,273 INFO L290 TraceCheckUtils]: 49: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,273 INFO L290 TraceCheckUtils]: 50: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,273 INFO L290 TraceCheckUtils]: 51: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,274 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23242#true} {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,274 INFO L290 TraceCheckUtils]: 53: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,275 INFO L290 TraceCheckUtils]: 54: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,275 INFO L290 TraceCheckUtils]: 55: Hoare triple {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,276 INFO L290 TraceCheckUtils]: 56: Hoare triple {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:34,276 INFO L290 TraceCheckUtils]: 57: Hoare triple {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-28 06:01:34,277 INFO L290 TraceCheckUtils]: 58: Hoare triple {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !false; {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-28 06:01:34,277 INFO L290 TraceCheckUtils]: 59: Hoare triple {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-28 06:01:34,278 INFO L290 TraceCheckUtils]: 60: Hoare triple {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !false; {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-28 06:01:34,278 INFO L290 TraceCheckUtils]: 61: Hoare triple {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-28 06:01:34,279 INFO L290 TraceCheckUtils]: 62: Hoare triple {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !false; {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-28 06:01:34,279 INFO L272 TraceCheckUtils]: 63: Hoare triple {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,279 INFO L290 TraceCheckUtils]: 64: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:34,279 INFO L290 TraceCheckUtils]: 65: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,280 INFO L290 TraceCheckUtils]: 66: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,281 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #102#return; {23458#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,281 INFO L272 TraceCheckUtils]: 68: Hoare triple {23458#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,281 INFO L290 TraceCheckUtils]: 69: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:34,282 INFO L290 TraceCheckUtils]: 70: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,282 INFO L290 TraceCheckUtils]: 71: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:34,283 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23458#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,283 INFO L272 TraceCheckUtils]: 73: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,283 INFO L290 TraceCheckUtils]: 74: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,283 INFO L290 TraceCheckUtils]: 75: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,283 INFO L290 TraceCheckUtils]: 76: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,284 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23242#true} {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,284 INFO L272 TraceCheckUtils]: 78: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,284 INFO L290 TraceCheckUtils]: 79: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,284 INFO L290 TraceCheckUtils]: 80: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,284 INFO L290 TraceCheckUtils]: 81: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,285 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23242#true} {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,286 INFO L290 TraceCheckUtils]: 83: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,287 INFO L290 TraceCheckUtils]: 84: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,287 INFO L290 TraceCheckUtils]: 85: Hoare triple {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,288 INFO L290 TraceCheckUtils]: 86: Hoare triple {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:34,290 INFO L290 TraceCheckUtils]: 87: Hoare triple {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,291 INFO L290 TraceCheckUtils]: 88: Hoare triple {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !false; {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,291 INFO L290 TraceCheckUtils]: 89: Hoare triple {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,292 INFO L290 TraceCheckUtils]: 90: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !false; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,292 INFO L290 TraceCheckUtils]: 91: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,293 INFO L290 TraceCheckUtils]: 92: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !false; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,293 INFO L272 TraceCheckUtils]: 93: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:01:34,293 INFO L290 TraceCheckUtils]: 94: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:01:34,293 INFO L290 TraceCheckUtils]: 95: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:01:34,293 INFO L290 TraceCheckUtils]: 96: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:01:34,294 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23242#true} {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} #102#return; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-28 06:01:34,295 INFO L272 TraceCheckUtils]: 98: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:01:34,295 INFO L290 TraceCheckUtils]: 99: Hoare triple {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23560#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:34,296 INFO L290 TraceCheckUtils]: 100: Hoare triple {23560#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23243#false} is VALID [2022-04-28 06:01:34,296 INFO L290 TraceCheckUtils]: 101: Hoare triple {23243#false} assume !false; {23243#false} is VALID [2022-04-28 06:01:34,296 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 26 proven. 92 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-28 06:01:34,296 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:02:48,311 INFO L290 TraceCheckUtils]: 101: Hoare triple {23243#false} assume !false; {23243#false} is VALID [2022-04-28 06:02:48,312 INFO L290 TraceCheckUtils]: 100: Hoare triple {23560#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23243#false} is VALID [2022-04-28 06:02:48,312 INFO L290 TraceCheckUtils]: 99: Hoare triple {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23560#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:48,313 INFO L272 TraceCheckUtils]: 98: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:02:48,313 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23242#true} {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:48,313 INFO L290 TraceCheckUtils]: 96: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:48,313 INFO L290 TraceCheckUtils]: 95: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:48,314 INFO L290 TraceCheckUtils]: 94: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:48,314 INFO L272 TraceCheckUtils]: 93: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:48,314 INFO L290 TraceCheckUtils]: 92: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:48,314 INFO L290 TraceCheckUtils]: 91: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:48,315 INFO L290 TraceCheckUtils]: 90: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:48,315 INFO L290 TraceCheckUtils]: 89: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:48,315 INFO L290 TraceCheckUtils]: 88: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:50,311 INFO L290 TraceCheckUtils]: 87: Hoare triple {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:02:50,312 INFO L290 TraceCheckUtils]: 86: Hoare triple {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 06:02:50,313 INFO L290 TraceCheckUtils]: 85: Hoare triple {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 06:02:51,115 INFO L290 TraceCheckUtils]: 84: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 06:02:51,116 INFO L290 TraceCheckUtils]: 83: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:02:51,117 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23242#true} {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:02:51,117 INFO L290 TraceCheckUtils]: 81: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,117 INFO L290 TraceCheckUtils]: 80: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,117 INFO L290 TraceCheckUtils]: 79: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,117 INFO L272 TraceCheckUtils]: 78: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,118 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23242#true} {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:02:51,118 INFO L290 TraceCheckUtils]: 76: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,118 INFO L290 TraceCheckUtils]: 75: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,118 INFO L290 TraceCheckUtils]: 74: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,118 INFO L272 TraceCheckUtils]: 73: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,119 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23657#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:02:51,120 INFO L290 TraceCheckUtils]: 71: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:51,120 INFO L290 TraceCheckUtils]: 70: Hoare triple {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:51,120 INFO L290 TraceCheckUtils]: 69: Hoare triple {23242#true} ~cond := #in~cond; {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:02:51,121 INFO L272 TraceCheckUtils]: 68: Hoare triple {23657#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,122 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {23657#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:02:51,122 INFO L290 TraceCheckUtils]: 66: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:51,122 INFO L290 TraceCheckUtils]: 65: Hoare triple {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:51,123 INFO L290 TraceCheckUtils]: 64: Hoare triple {23242#true} ~cond := #in~cond; {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:02:51,123 INFO L272 TraceCheckUtils]: 63: Hoare triple {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,123 INFO L290 TraceCheckUtils]: 62: Hoare triple {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:02:51,124 INFO L290 TraceCheckUtils]: 61: Hoare triple {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:02:51,124 INFO L290 TraceCheckUtils]: 60: Hoare triple {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 59: Hoare triple {23242#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 58: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 57: Hoare triple {23242#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 56: Hoare triple {23242#true} assume !(~c~0 >= ~b~0); {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 55: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 54: Hoare triple {23242#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 53: Hoare triple {23242#true} assume !(~c~0 >= 2 * ~v~0); {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23242#true} {23242#true} #108#return; {23242#true} is VALID [2022-04-28 06:02:51,126 INFO L290 TraceCheckUtils]: 51: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 50: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 49: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L272 TraceCheckUtils]: 48: Hoare triple {23242#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23242#true} {23242#true} #106#return; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 46: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 45: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 44: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L272 TraceCheckUtils]: 43: Hoare triple {23242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23242#true} {23242#true} #104#return; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 41: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,127 INFO L290 TraceCheckUtils]: 40: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 39: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L272 TraceCheckUtils]: 38: Hoare triple {23242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23242#true} {23242#true} #102#return; {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 36: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 35: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L272 TraceCheckUtils]: 33: Hoare triple {23242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 32: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {23242#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23242#true} is VALID [2022-04-28 06:02:51,128 INFO L290 TraceCheckUtils]: 30: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {23242#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 28: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 27: Hoare triple {23242#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23242#true} {23242#true} #100#return; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 25: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 24: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 23: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L272 TraceCheckUtils]: 22: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23242#true} {23242#true} #98#return; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 20: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,129 INFO L290 TraceCheckUtils]: 19: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L272 TraceCheckUtils]: 17: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23242#true} {23242#true} #96#return; {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L290 TraceCheckUtils]: 15: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L290 TraceCheckUtils]: 14: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L272 TraceCheckUtils]: 12: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L290 TraceCheckUtils]: 11: Hoare triple {23242#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23242#true} {23242#true} #94#return; {23242#true} is VALID [2022-04-28 06:02:51,130 INFO L290 TraceCheckUtils]: 9: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L272 TraceCheckUtils]: 6: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L290 TraceCheckUtils]: 5: Hoare triple {23242#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L272 TraceCheckUtils]: 4: Hoare triple {23242#true} call #t~ret6 := main(); {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23242#true} {23242#true} #112#return; {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L290 TraceCheckUtils]: 2: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {23242#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {23242#true} is VALID [2022-04-28 06:02:51,131 INFO L272 TraceCheckUtils]: 0: Hoare triple {23242#true} call ULTIMATE.init(); {23242#true} is VALID [2022-04-28 06:02:51,132 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 69 proven. 27 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2022-04-28 06:02:51,132 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:02:51,132 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [501296958] [2022-04-28 06:02:51,132 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:02:51,132 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1942441292] [2022-04-28 06:02:51,132 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1942441292] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:02:51,132 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:02:51,132 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 12] total 26 [2022-04-28 06:02:51,133 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:02:51,133 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [32127903] [2022-04-28 06:02:51,133 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [32127903] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:51,133 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:51,133 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-28 06:02:51,133 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [95246906] [2022-04-28 06:02:51,133 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:02:51,133 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-28 06:02:51,134 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:02:51,134 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-28 06:02:51,202 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:02:51,202 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 06:02:51,202 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:51,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 06:02:51,203 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=99, Invalid=551, Unknown=0, NotChecked=0, Total=650 [2022-04-28 06:02:51,203 INFO L87 Difference]: Start difference. First operand 395 states and 555 transitions. Second operand has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-28 06:02:55,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:55,872 INFO L93 Difference]: Finished difference Result 470 states and 646 transitions. [2022-04-28 06:02:55,872 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 06:02:55,874 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-28 06:02:55,874 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:55,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-28 06:02:55,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-28 06:02:55,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-28 06:02:55,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-28 06:02:55,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-04-28 06:02:56,026 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 06:02:56,036 INFO L225 Difference]: With dead ends: 470 [2022-04-28 06:02:56,037 INFO L226 Difference]: Without dead ends: 468 [2022-04-28 06:02:56,037 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 178 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 191 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=137, Invalid=793, Unknown=0, NotChecked=0, Total=930 [2022-04-28 06:02:56,037 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 66 mSDsluCounter, 395 mSDsCounter, 0 mSdLazyCounter, 1055 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 92 SdHoareTripleChecker+Valid, 444 SdHoareTripleChecker+Invalid, 1098 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 1055 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-28 06:02:56,038 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [92 Valid, 444 Invalid, 1098 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 1055 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-28 06:02:56,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 468 states. [2022-04-28 06:02:56,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 468 to 407. [2022-04-28 06:02:56,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:56,793 INFO L82 GeneralOperation]: Start isEquivalent. First operand 468 states. Second operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:02:56,794 INFO L74 IsIncluded]: Start isIncluded. First operand 468 states. Second operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:02:56,794 INFO L87 Difference]: Start difference. First operand 468 states. Second operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:02:56,804 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:56,804 INFO L93 Difference]: Finished difference Result 468 states and 644 transitions. [2022-04-28 06:02:56,804 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 644 transitions. [2022-04-28 06:02:56,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:56,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:56,806 INFO L74 IsIncluded]: Start isIncluded. First operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 468 states. [2022-04-28 06:02:56,806 INFO L87 Difference]: Start difference. First operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 468 states. [2022-04-28 06:02:56,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:56,841 INFO L93 Difference]: Finished difference Result 468 states and 644 transitions. [2022-04-28 06:02:56,841 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 644 transitions. [2022-04-28 06:02:56,842 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:56,842 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:56,842 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:56,842 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:56,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-28 06:02:56,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 407 states to 407 states and 564 transitions. [2022-04-28 06:02:56,869 INFO L78 Accepts]: Start accepts. Automaton has 407 states and 564 transitions. Word has length 102 [2022-04-28 06:02:56,869 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:56,869 INFO L495 AbstractCegarLoop]: Abstraction has 407 states and 564 transitions. [2022-04-28 06:02:56,869 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-28 06:02:56,869 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 407 states and 564 transitions. [2022-04-28 06:02:58,445 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 564 edges. 564 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:58,445 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 564 transitions. [2022-04-28 06:02:58,472 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 06:02:58,472 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:58,472 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 06:02:58,488 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 06:02:58,672 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 06:02:58,673 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:58,673 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:58,673 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 5 times [2022-04-28 06:02:58,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:58,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [886397892] [2022-04-28 06:02:58,674 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:58,674 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 6 times [2022-04-28 06:02:58,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:58,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1589198015] [2022-04-28 06:02:58,674 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:58,674 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:58,684 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:58,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1609778951] [2022-04-28 06:02:58,684 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:02:58,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:58,685 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:58,685 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 06:02:58,686 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 06:02:58,829 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 06:02:58,829 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:58,831 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 06:02:58,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:58,849 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:03:30,534 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:37,445 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:37,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {26579#true} call ULTIMATE.init(); {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 1: Hoare triple {26579#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26579#true} {26579#true} #112#return; {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L272 TraceCheckUtils]: 4: Hoare triple {26579#true} call #t~ret6 := main(); {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 5: Hoare triple {26579#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L272 TraceCheckUtils]: 6: Hoare triple {26579#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 7: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 8: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 9: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26579#true} {26579#true} #94#return; {26579#true} is VALID [2022-04-28 06:03:37,699 INFO L290 TraceCheckUtils]: 11: Hoare triple {26579#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L272 TraceCheckUtils]: 12: Hoare triple {26579#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L290 TraceCheckUtils]: 13: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L290 TraceCheckUtils]: 14: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L290 TraceCheckUtils]: 15: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26579#true} {26579#true} #96#return; {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L272 TraceCheckUtils]: 17: Hoare triple {26579#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L290 TraceCheckUtils]: 18: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L290 TraceCheckUtils]: 19: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L290 TraceCheckUtils]: 20: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,700 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26579#true} {26579#true} #98#return; {26579#true} is VALID [2022-04-28 06:03:37,701 INFO L272 TraceCheckUtils]: 22: Hoare triple {26579#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,701 INFO L290 TraceCheckUtils]: 23: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,701 INFO L290 TraceCheckUtils]: 24: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,701 INFO L290 TraceCheckUtils]: 25: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,701 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26579#true} {26579#true} #100#return; {26579#true} is VALID [2022-04-28 06:03:37,701 INFO L290 TraceCheckUtils]: 27: Hoare triple {26579#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,702 INFO L290 TraceCheckUtils]: 28: Hoare triple {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,702 INFO L290 TraceCheckUtils]: 29: Hoare triple {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,703 INFO L290 TraceCheckUtils]: 30: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,703 INFO L290 TraceCheckUtils]: 31: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,703 INFO L290 TraceCheckUtils]: 32: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,704 INFO L272 TraceCheckUtils]: 33: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,704 INFO L290 TraceCheckUtils]: 34: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,704 INFO L290 TraceCheckUtils]: 35: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,704 INFO L290 TraceCheckUtils]: 36: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,705 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,705 INFO L272 TraceCheckUtils]: 38: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,705 INFO L290 TraceCheckUtils]: 39: Hoare triple {26579#true} ~cond := #in~cond; {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,705 INFO L290 TraceCheckUtils]: 40: Hoare triple {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,706 INFO L290 TraceCheckUtils]: 41: Hoare triple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,706 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,706 INFO L272 TraceCheckUtils]: 43: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,706 INFO L290 TraceCheckUtils]: 44: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,707 INFO L290 TraceCheckUtils]: 45: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,707 INFO L290 TraceCheckUtils]: 46: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,707 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,707 INFO L272 TraceCheckUtils]: 48: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,708 INFO L290 TraceCheckUtils]: 49: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,708 INFO L290 TraceCheckUtils]: 50: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,708 INFO L290 TraceCheckUtils]: 51: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,709 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,709 INFO L290 TraceCheckUtils]: 53: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,709 INFO L290 TraceCheckUtils]: 54: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,709 INFO L272 TraceCheckUtils]: 55: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,710 INFO L290 TraceCheckUtils]: 56: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,710 INFO L290 TraceCheckUtils]: 57: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,710 INFO L290 TraceCheckUtils]: 58: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,710 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,711 INFO L272 TraceCheckUtils]: 60: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,711 INFO L290 TraceCheckUtils]: 61: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,711 INFO L290 TraceCheckUtils]: 62: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,711 INFO L290 TraceCheckUtils]: 63: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,712 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,712 INFO L272 TraceCheckUtils]: 65: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,712 INFO L290 TraceCheckUtils]: 66: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,712 INFO L290 TraceCheckUtils]: 67: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,712 INFO L290 TraceCheckUtils]: 68: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,713 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,713 INFO L272 TraceCheckUtils]: 70: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,713 INFO L290 TraceCheckUtils]: 71: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,713 INFO L290 TraceCheckUtils]: 72: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,713 INFO L290 TraceCheckUtils]: 73: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,714 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,714 INFO L290 TraceCheckUtils]: 75: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,715 INFO L290 TraceCheckUtils]: 76: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,715 INFO L272 TraceCheckUtils]: 77: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,715 INFO L290 TraceCheckUtils]: 78: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,715 INFO L290 TraceCheckUtils]: 79: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,715 INFO L290 TraceCheckUtils]: 80: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,716 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,716 INFO L272 TraceCheckUtils]: 82: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,716 INFO L290 TraceCheckUtils]: 83: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,716 INFO L290 TraceCheckUtils]: 84: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,716 INFO L290 TraceCheckUtils]: 85: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,717 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,717 INFO L272 TraceCheckUtils]: 87: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,717 INFO L290 TraceCheckUtils]: 88: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-28 06:03:37,717 INFO L290 TraceCheckUtils]: 89: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-28 06:03:37,717 INFO L290 TraceCheckUtils]: 90: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-28 06:03:37,718 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26579#true} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,718 INFO L272 TraceCheckUtils]: 92: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-28 06:03:37,718 INFO L290 TraceCheckUtils]: 93: Hoare triple {26579#true} ~cond := #in~cond; {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,719 INFO L290 TraceCheckUtils]: 94: Hoare triple {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,719 INFO L290 TraceCheckUtils]: 95: Hoare triple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,720 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26876#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,720 INFO L290 TraceCheckUtils]: 97: Hoare triple {26876#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {26880#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,723 INFO L290 TraceCheckUtils]: 98: Hoare triple {26880#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,724 INFO L290 TraceCheckUtils]: 99: Hoare triple {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !false; {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,724 INFO L290 TraceCheckUtils]: 100: Hoare triple {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,726 INFO L290 TraceCheckUtils]: 101: Hoare triple {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-28 06:03:37,727 INFO L290 TraceCheckUtils]: 102: Hoare triple {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !false; {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-28 06:03:37,727 INFO L290 TraceCheckUtils]: 103: Hoare triple {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !(0 != ~b~0); {26901#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} is VALID [2022-04-28 06:03:37,730 INFO L272 TraceCheckUtils]: 104: Hoare triple {26901#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {26905#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:03:37,730 INFO L290 TraceCheckUtils]: 105: Hoare triple {26905#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26909#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,731 INFO L290 TraceCheckUtils]: 106: Hoare triple {26909#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26580#false} is VALID [2022-04-28 06:03:37,731 INFO L290 TraceCheckUtils]: 107: Hoare triple {26580#false} assume !false; {26580#false} is VALID [2022-04-28 06:03:37,731 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 244 trivial. 0 not checked. [2022-04-28 06:03:37,731 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:03:53,993 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:07:28,106 WARN L855 $PredicateComparison]: unable to prove that (and (not (= |c___VERIFIER_assert_#in~cond| 0)) (or (forall ((v_main_~b~0_BEFORE_CALL_117 Int) (v_main_~q~0_BEFORE_CALL_90 Int) (v_main_~r~0_BEFORE_CALL_82 Int) (v_main_~y~0_BEFORE_CALL_118 Int) (v_main_~s~0_BEFORE_CALL_94 Int) (v_main_~p~0_BEFORE_CALL_82 Int) (v_main_~k~0_BEFORE_CALL_74 Int) (v_main_~x~0_BEFORE_CALL_111 Int) (v_main_~d~0_BEFORE_CALL_70 Int)) (let ((.cse0 (* v_main_~d~0_BEFORE_CALL_70 v_main_~b~0_BEFORE_CALL_117))) (or (= (mod .cse0 v_main_~b~0_BEFORE_CALL_117) 0) (= (+ (* v_main_~p~0_BEFORE_CALL_82 v_main_~x~0_BEFORE_CALL_111) v_main_~b~0_BEFORE_CALL_117 (* v_main_~r~0_BEFORE_CALL_82 v_main_~y~0_BEFORE_CALL_118)) (+ (* v_main_~y~0_BEFORE_CALL_118 v_main_~k~0_BEFORE_CALL_74 v_main_~s~0_BEFORE_CALL_94) (* v_main_~q~0_BEFORE_CALL_90 v_main_~d~0_BEFORE_CALL_70 v_main_~x~0_BEFORE_CALL_111) (* v_main_~d~0_BEFORE_CALL_70 v_main_~y~0_BEFORE_CALL_118 v_main_~s~0_BEFORE_CALL_94) (* v_main_~y~0_BEFORE_CALL_118 v_main_~s~0_BEFORE_CALL_94) (* v_main_~q~0_BEFORE_CALL_90 v_main_~x~0_BEFORE_CALL_111 v_main_~k~0_BEFORE_CALL_74) (* v_main_~q~0_BEFORE_CALL_90 v_main_~x~0_BEFORE_CALL_111))) (<= .cse0 0)))) (not (= |c___VERIFIER_assert_#in~cond| 1)))) is different from true [2022-04-28 06:08:11,328 WARN L855 $PredicateComparison]: unable to prove that (or (and (not (= |c___VERIFIER_assert_#in~cond| 0)) (or (forall ((v_main_~b~0_BEFORE_CALL_117 Int) (v_main_~q~0_BEFORE_CALL_90 Int) (v_main_~r~0_BEFORE_CALL_82 Int) (v_main_~y~0_BEFORE_CALL_118 Int) (v_main_~s~0_BEFORE_CALL_94 Int) (v_main_~p~0_BEFORE_CALL_82 Int) (v_main_~k~0_BEFORE_CALL_74 Int) (v_main_~x~0_BEFORE_CALL_111 Int) (v_main_~d~0_BEFORE_CALL_70 Int)) (let ((.cse0 (* v_main_~d~0_BEFORE_CALL_70 v_main_~b~0_BEFORE_CALL_117))) (or (= (mod .cse0 v_main_~b~0_BEFORE_CALL_117) 0) (= (+ (* v_main_~p~0_BEFORE_CALL_82 v_main_~x~0_BEFORE_CALL_111) v_main_~b~0_BEFORE_CALL_117 (* v_main_~r~0_BEFORE_CALL_82 v_main_~y~0_BEFORE_CALL_118)) (+ (* v_main_~y~0_BEFORE_CALL_118 v_main_~k~0_BEFORE_CALL_74 v_main_~s~0_BEFORE_CALL_94) (* v_main_~q~0_BEFORE_CALL_90 v_main_~d~0_BEFORE_CALL_70 v_main_~x~0_BEFORE_CALL_111) (* v_main_~d~0_BEFORE_CALL_70 v_main_~y~0_BEFORE_CALL_118 v_main_~s~0_BEFORE_CALL_94) (* v_main_~y~0_BEFORE_CALL_118 v_main_~s~0_BEFORE_CALL_94) (* v_main_~q~0_BEFORE_CALL_90 v_main_~x~0_BEFORE_CALL_111 v_main_~k~0_BEFORE_CALL_74) (* v_main_~q~0_BEFORE_CALL_90 v_main_~x~0_BEFORE_CALL_111))) (<= .cse0 0)))) (not (= |c___VERIFIER_assert_#in~cond| 1)))) (= c___VERIFIER_assert_~cond 0)) is different from true [2022-04-28 06:08:35,257 WARN L855 $PredicateComparison]: unable to prove that (or (forall ((v_main_~b~0_BEFORE_CALL_117 Int) (v_main_~q~0_BEFORE_CALL_90 Int) (v_main_~r~0_BEFORE_CALL_82 Int) (v_main_~y~0_BEFORE_CALL_118 Int) (v_main_~s~0_BEFORE_CALL_94 Int) (v_main_~p~0_BEFORE_CALL_82 Int) (v_main_~k~0_BEFORE_CALL_74 Int) (v_main_~x~0_BEFORE_CALL_111 Int) (v_main_~d~0_BEFORE_CALL_70 Int)) (let ((.cse0 (* v_main_~d~0_BEFORE_CALL_70 v_main_~b~0_BEFORE_CALL_117))) (or (= (mod .cse0 v_main_~b~0_BEFORE_CALL_117) 0) (= (+ (* v_main_~p~0_BEFORE_CALL_82 v_main_~x~0_BEFORE_CALL_111) v_main_~b~0_BEFORE_CALL_117 (* v_main_~r~0_BEFORE_CALL_82 v_main_~y~0_BEFORE_CALL_118)) (+ (* v_main_~y~0_BEFORE_CALL_118 v_main_~k~0_BEFORE_CALL_74 v_main_~s~0_BEFORE_CALL_94) (* v_main_~q~0_BEFORE_CALL_90 v_main_~d~0_BEFORE_CALL_70 v_main_~x~0_BEFORE_CALL_111) (* v_main_~d~0_BEFORE_CALL_70 v_main_~y~0_BEFORE_CALL_118 v_main_~s~0_BEFORE_CALL_94) (* v_main_~y~0_BEFORE_CALL_118 v_main_~s~0_BEFORE_CALL_94) (* v_main_~q~0_BEFORE_CALL_90 v_main_~x~0_BEFORE_CALL_111 v_main_~k~0_BEFORE_CALL_74) (* v_main_~q~0_BEFORE_CALL_90 v_main_~x~0_BEFORE_CALL_111))) (<= .cse0 0)))) (not (= |c___VERIFIER_assert_#in~cond| 1))) is different from true