/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_valuebound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:51:42,825 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:51:42,852 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:51:42,879 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:51:42,880 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:51:42,880 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:51:42,883 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:51:42,886 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:51:42,888 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:51:42,891 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:51:42,891 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:51:42,892 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:51:42,892 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:51:42,892 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:51:42,893 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:51:42,894 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:51:42,894 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:51:42,894 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:51:42,895 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:51:42,896 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:51:42,897 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:51:42,897 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:51:42,898 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:51:42,899 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:51:42,899 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:51:42,901 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:51:42,901 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:51:42,901 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:51:42,901 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:51:42,902 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:51:42,902 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:51:42,902 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:51:42,903 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:51:42,903 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:51:42,904 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:51:42,904 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:51:42,904 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:51:42,905 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:51:42,905 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:51:42,905 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:51:42,905 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:51:42,908 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:51:42,908 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:51:42,913 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:51:42,913 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:51:42,914 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:51:42,914 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:51:42,914 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:51:42,914 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:51:42,914 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:51:42,915 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:51:42,915 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:51:42,916 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:51:42,916 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 05:51:43,084 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:51:43,101 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:51:43,103 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:51:43,104 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:51:43,104 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:51:43,105 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound100.c [2022-04-28 05:51:43,156 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/69d100b44/33885e41f6c34579b28b0e1c209b6f64/FLAG7f10b66ac [2022-04-28 05:51:43,504 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:51:43,505 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound100.c [2022-04-28 05:51:43,512 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/69d100b44/33885e41f6c34579b28b0e1c209b6f64/FLAG7f10b66ac [2022-04-28 05:51:43,520 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/69d100b44/33885e41f6c34579b28b0e1c209b6f64 [2022-04-28 05:51:43,521 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:51:43,522 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:51:43,527 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:51:43,527 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:51:43,529 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:51:43,530 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,530 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5a8f652c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43, skipping insertion in model container [2022-04-28 05:51:43,530 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,537 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:51:43,547 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:51:43,666 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_valuebound100.c[490,503] [2022-04-28 05:51:43,679 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:51:43,684 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:51:43,692 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_valuebound100.c[490,503] [2022-04-28 05:51:43,700 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:51:43,709 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:51:43,709 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43 WrapperNode [2022-04-28 05:51:43,709 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:51:43,710 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:51:43,710 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:51:43,710 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:51:43,716 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,716 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,720 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,720 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,724 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,727 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,728 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,729 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:51:43,730 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:51:43,730 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:51:43,730 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:51:43,730 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (1/1) ... [2022-04-28 05:51:43,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:51:43,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:43,762 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 05:51:43,765 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 05:51:43,788 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:51:43,788 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:51:43,788 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:51:43,788 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:51:43,789 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:51:43,789 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:51:43,789 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:51:43,790 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:51:43,828 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:51:43,829 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:51:43,986 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:51:43,990 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:51:43,991 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:51:43,992 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:51:43 BoogieIcfgContainer [2022-04-28 05:51:43,992 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:51:43,993 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:51:43,993 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:51:43,999 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:51:44,000 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:51:43" (1/3) ... [2022-04-28 05:51:44,000 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5c89537d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:51:44, skipping insertion in model container [2022-04-28 05:51:44,000 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:43" (2/3) ... [2022-04-28 05:51:44,001 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5c89537d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:51:44, skipping insertion in model container [2022-04-28 05:51:44,001 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:51:43" (3/3) ... [2022-04-28 05:51:44,002 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_valuebound100.c [2022-04-28 05:51:44,010 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:51:44,010 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:51:44,069 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:51:44,078 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@45a75f70, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@62329461 [2022-04-28 05:51:44,078 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:51:44,089 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:44,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 05:51:44,096 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:44,097 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:44,097 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:44,102 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:44,102 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 1 times [2022-04-28 05:51:44,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:44,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [505222375] [2022-04-28 05:51:44,118 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:44,118 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 2 times [2022-04-28 05:51:44,121 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:44,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1812734706] [2022-04-28 05:51:44,122 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:44,122 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:44,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,272 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:51:44,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,293 INFO L290 TraceCheckUtils]: 0: Hoare triple {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:51:44,294 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:51:44,294 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-28 05:51:44,294 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:51:44,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,301 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,302 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:51:44,303 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 05:51:44,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,308 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,309 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:51:44,309 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 05:51:44,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,314 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,315 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,315 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,315 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-28 05:51:44,315 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 05:51:44,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,320 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,321 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,321 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,321 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-28 05:51:44,323 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:51:44,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:51:44,323 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:51:44,323 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-28 05:51:44,323 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-28 05:51:44,324 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-28 05:51:44,324 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:44,324 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,324 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,325 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:51:44,325 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-28 05:51:44,325 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:44,325 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,327 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,327 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:51:44,327 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:44,327 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,329 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-28 05:51:44,329 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:44,329 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:44,331 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:44,331 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:44,331 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-28 05:51:44,332 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-28 05:51:44,332 INFO L290 TraceCheckUtils]: 28: Hoare triple {44#false} assume false; {44#false} is VALID [2022-04-28 05:51:44,332 INFO L272 TraceCheckUtils]: 29: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-28 05:51:44,332 INFO L290 TraceCheckUtils]: 30: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:51:44,332 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:51:44,332 INFO L290 TraceCheckUtils]: 32: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:51:44,333 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:51:44,333 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:44,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1812734706] [2022-04-28 05:51:44,334 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1812734706] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:44,334 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:44,334 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:51:44,336 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:44,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [505222375] [2022-04-28 05:51:44,336 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [505222375] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:44,336 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:44,337 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:51:44,337 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1468387103] [2022-04-28 05:51:44,337 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:44,341 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 05:51:44,342 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:44,347 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:44,385 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,386 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:51:44,387 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:44,423 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:51:44,424 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:51:44,430 INFO L87 Difference]: Start difference. First operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:44,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:44,611 INFO L93 Difference]: Finished difference Result 73 states and 115 transitions. [2022-04-28 05:51:44,611 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:51:44,611 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 05:51:44,612 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:44,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:44,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-28 05:51:44,619 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:44,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-28 05:51:44,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 115 transitions. [2022-04-28 05:51:44,750 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,762 INFO L225 Difference]: With dead ends: 73 [2022-04-28 05:51:44,762 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 05:51:44,765 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:51:44,769 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:44,770 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 43 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:44,780 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 05:51:44,796 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-28 05:51:44,796 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:44,797 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:44,798 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:44,799 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:44,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:44,807 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-28 05:51:44,807 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:51:44,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:44,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:44,809 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-28 05:51:44,809 INFO L87 Difference]: Start difference. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-28 05:51:44,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:44,812 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-28 05:51:44,812 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:51:44,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:44,812 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:44,813 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:44,813 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:44,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:44,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-28 05:51:44,816 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 33 [2022-04-28 05:51:44,816 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:44,816 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-28 05:51:44,816 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:44,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-28 05:51:44,854 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,854 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:51:44,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 05:51:44,855 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:44,855 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:44,855 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:51:44,855 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:44,856 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:44,856 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 1 times [2022-04-28 05:51:44,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:44,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [322855506] [2022-04-28 05:51:44,856 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:44,856 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 2 times [2022-04-28 05:51:44,857 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:44,857 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1055913114] [2022-04-28 05:51:44,857 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:44,857 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:44,875 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:44,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2110879514] [2022-04-28 05:51:44,875 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:44,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:44,876 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:44,878 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:44,879 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 05:51:44,923 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:51:44,923 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:44,934 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:51:44,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,956 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:45,176 INFO L272 TraceCheckUtils]: 0: Hoare triple {353#true} call ULTIMATE.init(); {353#true} is VALID [2022-04-28 05:51:45,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {353#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {353#true} is VALID [2022-04-28 05:51:45,177 INFO L290 TraceCheckUtils]: 2: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:45,177 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {353#true} {353#true} #112#return; {353#true} is VALID [2022-04-28 05:51:45,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {353#true} call #t~ret6 := main(); {353#true} is VALID [2022-04-28 05:51:45,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {353#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {353#true} is VALID [2022-04-28 05:51:45,177 INFO L272 TraceCheckUtils]: 6: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:45,177 INFO L290 TraceCheckUtils]: 7: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:45,178 INFO L290 TraceCheckUtils]: 8: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:45,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:45,178 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {353#true} {353#true} #94#return; {353#true} is VALID [2022-04-28 05:51:45,178 INFO L290 TraceCheckUtils]: 11: Hoare triple {353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {353#true} is VALID [2022-04-28 05:51:45,178 INFO L272 TraceCheckUtils]: 12: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:45,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:45,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:45,178 INFO L290 TraceCheckUtils]: 15: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:45,179 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {353#true} {353#true} #96#return; {353#true} is VALID [2022-04-28 05:51:45,179 INFO L272 TraceCheckUtils]: 17: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:45,179 INFO L290 TraceCheckUtils]: 18: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:45,179 INFO L290 TraceCheckUtils]: 19: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:45,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:45,179 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {353#true} {353#true} #98#return; {353#true} is VALID [2022-04-28 05:51:45,179 INFO L272 TraceCheckUtils]: 22: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:45,179 INFO L290 TraceCheckUtils]: 23: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:45,179 INFO L290 TraceCheckUtils]: 24: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:45,180 INFO L290 TraceCheckUtils]: 25: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:45,180 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {353#true} {353#true} #100#return; {353#true} is VALID [2022-04-28 05:51:45,180 INFO L290 TraceCheckUtils]: 27: Hoare triple {353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:45,181 INFO L290 TraceCheckUtils]: 28: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:45,181 INFO L290 TraceCheckUtils]: 29: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:45,182 INFO L272 TraceCheckUtils]: 30: Hoare triple {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:45,183 INFO L290 TraceCheckUtils]: 31: Hoare triple {450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:45,183 INFO L290 TraceCheckUtils]: 32: Hoare triple {454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {354#false} is VALID [2022-04-28 05:51:45,183 INFO L290 TraceCheckUtils]: 33: Hoare triple {354#false} assume !false; {354#false} is VALID [2022-04-28 05:51:45,183 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:51:45,183 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:45,184 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:45,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1055913114] [2022-04-28 05:51:45,184 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:45,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2110879514] [2022-04-28 05:51:45,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2110879514] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:45,184 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:45,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:45,185 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:45,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [322855506] [2022-04-28 05:51:45,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [322855506] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:45,185 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:45,185 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:45,185 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1410042036] [2022-04-28 05:51:45,185 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:45,186 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-28 05:51:45,186 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:45,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:45,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:45,204 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:51:45,204 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:45,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:51:45,204 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:45,204 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:45,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:45,518 INFO L93 Difference]: Finished difference Result 54 states and 69 transitions. [2022-04-28 05:51:45,518 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:45,518 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-28 05:51:45,518 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:45,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:45,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:51:45,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:45,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:51:45,522 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-28 05:51:45,576 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:45,578 INFO L225 Difference]: With dead ends: 54 [2022-04-28 05:51:45,578 INFO L226 Difference]: Without dead ends: 51 [2022-04-28 05:51:45,579 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:51:45,579 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 14 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:45,580 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 158 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:45,580 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-28 05:51:45,589 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-28 05:51:45,590 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:45,590 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:45,590 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:45,591 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:45,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:45,593 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-28 05:51:45,593 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-28 05:51:45,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:45,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:45,594 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-28 05:51:45,595 INFO L87 Difference]: Start difference. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-28 05:51:45,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:45,597 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-28 05:51:45,597 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-28 05:51:45,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:45,598 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:45,598 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:45,598 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:45,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:45,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2022-04-28 05:51:45,603 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 34 [2022-04-28 05:51:45,603 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:45,603 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2022-04-28 05:51:45,603 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:45,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 64 transitions. [2022-04-28 05:51:45,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:45,659 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-28 05:51:45,660 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 05:51:45,660 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:45,660 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:45,681 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:45,871 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:45,872 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:45,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:45,872 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 1 times [2022-04-28 05:51:45,872 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:45,872 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1419317944] [2022-04-28 05:51:45,873 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:45,873 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 2 times [2022-04-28 05:51:45,873 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:45,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [815539114] [2022-04-28 05:51:45,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:45,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:45,892 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:45,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [220859214] [2022-04-28 05:51:45,892 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:45,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:45,893 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:45,909 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:45,910 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 05:51:45,948 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:45,948 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:45,949 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:51:45,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:45,962 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:46,125 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-28 05:51:46,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-28 05:51:46,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,127 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-28 05:51:46,127 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-28 05:51:46,128 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-28 05:51:46,128 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,128 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:46,128 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:46,128 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,128 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-28 05:51:46,128 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-28 05:51:46,131 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,133 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:46,133 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:46,136 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,136 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-28 05:51:46,136 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,136 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:46,137 INFO L290 TraceCheckUtils]: 19: Hoare triple {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:46,137 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:46,142 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:46,142 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,142 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:46,142 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:46,143 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,144 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:46,144 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:46,145 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:46,146 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:46,146 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:46,147 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:46,149 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:46,149 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:46,159 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-28 05:51:46,160 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-28 05:51:46,160 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 05:51:46,160 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 05:51:46,160 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 05:51:46,160 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 05:51:46,160 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:46,373 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 05:51:46,373 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 05:51:46,373 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 05:51:46,373 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-28 05:51:46,374 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-28 05:51:46,374 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:46,376 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:46,378 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:46,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:46,379 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:46,379 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:46,380 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:46,380 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:46,381 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,381 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:46,381 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:46,381 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,381 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:46,382 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:46,393 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:46,393 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:51:46,394 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,394 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:46,394 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:46,394 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:46,395 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-28 05:51:46,395 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-28 05:51:46,395 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-28 05:51:46,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:46,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-28 05:51:46,395 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-28 05:51:46,396 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 05:51:46,396 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:46,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [815539114] [2022-04-28 05:51:46,396 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:46,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [220859214] [2022-04-28 05:51:46,396 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [220859214] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:46,396 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:46,396 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:51:46,396 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:46,397 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1419317944] [2022-04-28 05:51:46,397 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1419317944] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:46,397 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:46,397 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:46,397 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [620237028] [2022-04-28 05:51:46,397 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:46,398 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:51:46,399 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:46,399 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:46,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:46,419 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:46,420 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:46,420 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:46,420 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:51:46,420 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:46,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:46,950 INFO L93 Difference]: Finished difference Result 103 states and 143 transitions. [2022-04-28 05:51:46,950 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:51:46,950 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:51:46,950 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:46,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:46,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-28 05:51:46,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:46,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-28 05:51:46,955 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-28 05:51:47,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:47,030 INFO L225 Difference]: With dead ends: 103 [2022-04-28 05:51:47,030 INFO L226 Difference]: Without dead ends: 96 [2022-04-28 05:51:47,030 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:47,031 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 68 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 232 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:47,031 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 232 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:47,031 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-28 05:51:47,090 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 71. [2022-04-28 05:51:47,090 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:47,090 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:47,091 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:47,091 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:47,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:47,095 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-28 05:51:47,095 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-28 05:51:47,096 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:47,096 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:47,096 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-28 05:51:47,096 INFO L87 Difference]: Start difference. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-28 05:51:47,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:47,100 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-28 05:51:47,100 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-28 05:51:47,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:47,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:47,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:47,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:47,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:47,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 95 transitions. [2022-04-28 05:51:47,103 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 95 transitions. Word has length 39 [2022-04-28 05:51:47,103 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:47,103 INFO L495 AbstractCegarLoop]: Abstraction has 71 states and 95 transitions. [2022-04-28 05:51:47,104 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:47,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 95 transitions. [2022-04-28 05:51:47,187 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:47,188 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 95 transitions. [2022-04-28 05:51:47,188 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 05:51:47,188 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:47,188 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:47,207 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:47,394 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 05:51:47,394 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:47,395 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:47,395 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 1 times [2022-04-28 05:51:47,395 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:47,395 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [526741674] [2022-04-28 05:51:47,395 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:47,395 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 2 times [2022-04-28 05:51:47,395 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:47,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1129044974] [2022-04-28 05:51:47,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:47,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:47,412 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:47,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1116050207] [2022-04-28 05:51:47,412 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:47,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:47,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:47,419 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:47,446 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 05:51:47,474 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:47,474 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:47,475 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-28 05:51:47,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:47,488 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:47,970 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:47,970 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:47,971 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:47,971 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:47,971 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-28 05:51:47,971 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-28 05:51:47,971 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:47,971 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:47,972 INFO L290 TraceCheckUtils]: 14: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:47,972 INFO L290 TraceCheckUtils]: 15: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:47,973 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 100))} is VALID [2022-04-28 05:51:47,973 INFO L272 TraceCheckUtils]: 17: Hoare triple {1621#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:47,973 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:47,974 INFO L290 TraceCheckUtils]: 19: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:47,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:47,987 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1621#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #98#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 100))} is VALID [2022-04-28 05:51:47,988 INFO L272 TraceCheckUtils]: 22: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:47,988 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:47,988 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:47,989 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:47,989 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 100))} #100#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 100))} is VALID [2022-04-28 05:51:47,990 INFO L290 TraceCheckUtils]: 27: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 100))} ~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_~y~0 100) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:47,990 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_~y~0 100) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~y~0 100) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:47,991 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_~y~0 100) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~y~0 100) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:51:47,991 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_~y~0 100) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~y~0 100) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:51:47,992 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_~y~0 100) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~y~0 100) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:51:47,992 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_~y~0 100) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 100))} is VALID [2022-04-28 05:51:47,993 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 100))} 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 100))} is VALID [2022-04-28 05:51:47,996 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 100))} 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 100))} is VALID [2022-04-28 05:51:47,997 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 100))} 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 100))} is VALID [2022-04-28 05:51:47,997 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 100))} 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_~y~0 100) (<= main_~x~0 main_~a~0))} is VALID [2022-04-28 05:51:47,998 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_~y~0 100) (<= main_~x~0 main_~a~0))} assume !false; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~y~0 100) (<= main_~x~0 main_~a~0))} is VALID [2022-04-28 05:51:47,999 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_~y~0 100) (<= main_~x~0 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:47,999 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:48,000 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-28 05:51:48,000 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-28 05:51:48,000 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 05:51:48,000 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:48,362 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-28 05:51:48,363 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-28 05:51:48,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:48,364 INFO L272 TraceCheckUtils]: 38: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:48,364 INFO L290 TraceCheckUtils]: 37: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:48,364 INFO L290 TraceCheckUtils]: 36: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:48,365 INFO L290 TraceCheckUtils]: 35: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:51:48,365 INFO L290 TraceCheckUtils]: 34: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:51:48,366 INFO L290 TraceCheckUtils]: 33: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:48,367 INFO L290 TraceCheckUtils]: 32: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:48,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:48,367 INFO L290 TraceCheckUtils]: 30: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:48,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:48,368 INFO L290 TraceCheckUtils]: 28: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !false; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-28 05:51:48,368 INFO L290 TraceCheckUtils]: 27: Hoare triple {1566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-28 05:51:48,369 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1566#true} #100#return; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L272 TraceCheckUtils]: 22: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1566#true} {1566#true} #98#return; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 20: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 19: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L272 TraceCheckUtils]: 17: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1566#true} {1566#true} #96#return; {1566#true} is VALID [2022-04-28 05:51:48,369 INFO L290 TraceCheckUtils]: 15: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 14: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-28 05:51:48,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-28 05:51:48,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:48,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-28 05:51:48,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-28 05:51:48,371 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:51:48,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:48,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1129044974] [2022-04-28 05:51:48,371 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:48,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1116050207] [2022-04-28 05:51:48,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1116050207] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:48,371 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:48,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-28 05:51:48,372 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:48,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [526741674] [2022-04-28 05:51:48,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [526741674] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:48,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:48,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:51:48,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [594509887] [2022-04-28 05:51:48,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:48,372 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-28 05:51:48,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:48,373 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:48,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:48,400 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:51:48,400 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:48,400 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:51:48,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:51:48,401 INFO L87 Difference]: Start difference. First operand 71 states and 95 transitions. Second operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:49,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:49,613 INFO L93 Difference]: Finished difference Result 112 states and 151 transitions. [2022-04-28 05:51:49,614 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:51:49,614 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-28 05:51:49,614 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:49,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:49,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-28 05:51:49,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:49,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-28 05:51:49,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 117 transitions. [2022-04-28 05:51:49,712 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:49,714 INFO L225 Difference]: With dead ends: 112 [2022-04-28 05:51:49,714 INFO L226 Difference]: Without dead ends: 110 [2022-04-28 05:51:49,715 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 66 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=96, Invalid=410, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:51:49,715 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 89 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 358 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 414 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 358 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:49,715 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [98 Valid, 245 Invalid, 414 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 358 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:51:49,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-28 05:51:49,849 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 93. [2022-04-28 05:51:49,849 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:49,849 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:49,850 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:49,850 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:49,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:49,853 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-28 05:51:49,854 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-28 05:51:49,854 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:49,854 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:49,854 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-28 05:51:49,855 INFO L87 Difference]: Start difference. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-28 05:51:49,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:49,858 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-28 05:51:49,858 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-28 05:51:49,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:49,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:49,858 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:49,859 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:49,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:49,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 122 transitions. [2022-04-28 05:51:49,861 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 122 transitions. Word has length 42 [2022-04-28 05:51:49,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:49,862 INFO L495 AbstractCegarLoop]: Abstraction has 93 states and 122 transitions. [2022-04-28 05:51:49,862 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:49,862 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 93 states and 122 transitions. [2022-04-28 05:51:49,971 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:49,972 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 122 transitions. [2022-04-28 05:51:49,972 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:51:49,972 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:49,972 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:49,988 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:50,173 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:50,173 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:50,173 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:50,173 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 1 times [2022-04-28 05:51:50,173 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:50,173 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1836569736] [2022-04-28 05:51:50,174 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:50,174 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 2 times [2022-04-28 05:51:50,174 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:50,174 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1985479494] [2022-04-28 05:51:50,174 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:50,174 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:50,190 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:50,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1799482710] [2022-04-28 05:51:50,190 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:50,190 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:50,190 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:50,191 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:50,192 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 05:51:50,235 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:50,236 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:50,236 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:51:50,247 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:50,248 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:50,490 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,490 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,491 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,491 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-28 05:51:50,491 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-28 05:51:50,491 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,493 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:50,493 INFO L290 TraceCheckUtils]: 14: Hoare triple {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:50,494 INFO L290 TraceCheckUtils]: 15: Hoare triple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:50,494 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 100))} is VALID [2022-04-28 05:51:50,494 INFO L272 TraceCheckUtils]: 17: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #98#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} is VALID [2022-04-28 05:51:50,495 INFO L272 TraceCheckUtils]: 22: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,495 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,496 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #100#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} is VALID [2022-04-28 05:51:50,496 INFO L290 TraceCheckUtils]: 27: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 100))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2564#(<= 0 main_~b~0)} is VALID [2022-04-28 05:51:50,496 INFO L290 TraceCheckUtils]: 28: Hoare triple {2564#(<= 0 main_~b~0)} assume !false; {2564#(<= 0 main_~b~0)} is VALID [2022-04-28 05:51:50,497 INFO L290 TraceCheckUtils]: 29: Hoare triple {2564#(<= 0 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:50,497 INFO L290 TraceCheckUtils]: 30: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:50,498 INFO L290 TraceCheckUtils]: 31: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:50,498 INFO L290 TraceCheckUtils]: 32: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:50,498 INFO L272 TraceCheckUtils]: 33: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,498 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,498 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,498 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,499 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:50,499 INFO L272 TraceCheckUtils]: 38: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,499 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,499 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,499 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,500 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:50,500 INFO L272 TraceCheckUtils]: 43: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:50,501 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:50,501 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-28 05:51:50,501 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-28 05:51:50,501 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 7 proven. 6 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:50,501 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:50,690 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-28 05:51:50,691 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-28 05:51:50,691 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:50,692 INFO L272 TraceCheckUtils]: 43: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:50,693 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #104#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:50,693 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,693 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,693 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,693 INFO L272 TraceCheckUtils]: 38: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,694 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #102#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:50,694 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,694 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,694 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,694 INFO L272 TraceCheckUtils]: 33: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,694 INFO L290 TraceCheckUtils]: 32: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:50,695 INFO L290 TraceCheckUtils]: 31: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:50,695 INFO L290 TraceCheckUtils]: 30: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:50,695 INFO L290 TraceCheckUtils]: 29: Hoare triple {2475#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:50,695 INFO L290 TraceCheckUtils]: 28: Hoare triple {2475#true} assume !false; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {2475#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2475#true} #100#return; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L272 TraceCheckUtils]: 22: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2475#true} #98#return; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,696 INFO L272 TraceCheckUtils]: 17: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2475#true} {2475#true} #96#return; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 15: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 14: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:50,697 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-28 05:51:50,698 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-28 05:51:50,698 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-28 05:51:50,698 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:50,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-28 05:51:50,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-28 05:51:50,698 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:50,698 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:50,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1985479494] [2022-04-28 05:51:50,699 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:50,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1799482710] [2022-04-28 05:51:50,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1799482710] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:51:50,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:51:50,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-28 05:51:50,699 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:50,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1836569736] [2022-04-28 05:51:50,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1836569736] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:50,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:50,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:50,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1965423733] [2022-04-28 05:51:50,699 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:50,700 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-28 05:51:50,700 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:50,700 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:50,723 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:50,723 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:50,723 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:50,724 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:50,724 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:51:50,724 INFO L87 Difference]: Start difference. First operand 93 states and 122 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:51,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:51,175 INFO L93 Difference]: Finished difference Result 130 states and 179 transitions. [2022-04-28 05:51:51,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:51,175 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-28 05:51:51,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:51,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:51,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:51:51,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:51,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:51:51,177 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:51:51,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:51,222 INFO L225 Difference]: With dead ends: 130 [2022-04-28 05:51:51,222 INFO L226 Difference]: Without dead ends: 128 [2022-04-28 05:51:51,223 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:51:51,223 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 8 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:51,223 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 141 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:51,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-28 05:51:51,435 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 123. [2022-04-28 05:51:51,435 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:51,436 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:51,436 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:51,436 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:51,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:51,440 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-28 05:51:51,440 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-28 05:51:51,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:51,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:51,441 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-28 05:51:51,441 INFO L87 Difference]: Start difference. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-28 05:51:51,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:51,444 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-28 05:51:51,445 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-28 05:51:51,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:51,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:51,445 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:51,445 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:51,445 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:51,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 172 transitions. [2022-04-28 05:51:51,449 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 172 transitions. Word has length 47 [2022-04-28 05:51:51,449 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:51,449 INFO L495 AbstractCegarLoop]: Abstraction has 123 states and 172 transitions. [2022-04-28 05:51:51,449 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:51,449 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 123 states and 172 transitions. [2022-04-28 05:51:51,632 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:51,632 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 172 transitions. [2022-04-28 05:51:51,632 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:51:51,632 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:51,633 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:51,648 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-28 05:51:51,842 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:51,842 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:51,842 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:51,842 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 1 times [2022-04-28 05:51:51,842 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:51,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1454857161] [2022-04-28 05:51:51,843 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:51,843 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 2 times [2022-04-28 05:51:51,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:51,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2080608698] [2022-04-28 05:51:51,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:51,843 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:51,866 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:51,866 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [929875968] [2022-04-28 05:51:51,866 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:51,866 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:51,866 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:51,874 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:51,875 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 05:51:51,910 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:51,910 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:51,911 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-28 05:51:51,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:51,931 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:55,470 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:51:55,470 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:51:55,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:55,471 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-28 05:51:55,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-28 05:51:55,471 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:55,474 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:55,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:55,474 INFO L290 TraceCheckUtils]: 15: Hoare triple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:55,475 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 100))} is VALID [2022-04-28 05:51:55,475 INFO L272 TraceCheckUtils]: 17: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:55,475 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:51:55,475 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:51:55,475 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:55,475 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #98#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 100))} is VALID [2022-04-28 05:51:55,476 INFO L272 TraceCheckUtils]: 22: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:55,476 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:55,476 INFO L290 TraceCheckUtils]: 24: Hoare triple {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:55,476 INFO L290 TraceCheckUtils]: 25: Hoare triple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:55,477 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #100#return; {3616#(and (<= main_~y~0 100) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,478 INFO L290 TraceCheckUtils]: 27: Hoare triple {3616#(and (<= main_~y~0 100) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3620#(and (= main_~r~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:55,478 INFO L290 TraceCheckUtils]: 28: Hoare triple {3620#(and (= main_~r~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3620#(and (= main_~r~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:55,478 INFO L290 TraceCheckUtils]: 29: Hoare triple {3620#(and (= main_~r~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3627#(and (= main_~r~0 0) (= main_~k~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:55,479 INFO L290 TraceCheckUtils]: 30: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3627#(and (= main_~r~0 0) (= main_~k~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:55,479 INFO L290 TraceCheckUtils]: 31: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3627#(and (= main_~r~0 0) (= main_~k~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:55,480 INFO L290 TraceCheckUtils]: 32: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,485 INFO L290 TraceCheckUtils]: 33: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,485 INFO L290 TraceCheckUtils]: 34: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,485 INFO L290 TraceCheckUtils]: 35: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,486 INFO L290 TraceCheckUtils]: 36: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,486 INFO L290 TraceCheckUtils]: 37: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,486 INFO L272 TraceCheckUtils]: 38: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:55,486 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:51:55,486 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:51:55,486 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:55,487 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} #102#return; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:55,488 INFO L272 TraceCheckUtils]: 43: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (<= main_~y~0 100) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:55,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3675#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:55,488 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-28 05:51:55,488 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-28 05:51:55,489 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 11 proven. 7 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 05:51:55,489 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:22,034 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-28 05:53:22,035 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-28 05:53:22,035 INFO L290 TraceCheckUtils]: 44: Hoare triple {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3675#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:22,036 INFO L272 TraceCheckUtils]: 43: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:22,036 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:22,036 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:22,036 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:22,036 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:22,036 INFO L272 TraceCheckUtils]: 38: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:22,037 INFO L290 TraceCheckUtils]: 37: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:22,037 INFO L290 TraceCheckUtils]: 36: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:22,037 INFO L290 TraceCheckUtils]: 35: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:22,038 INFO L290 TraceCheckUtils]: 34: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:22,038 INFO L290 TraceCheckUtils]: 33: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:22,280 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:53:22,281 INFO L290 TraceCheckUtils]: 31: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !(~c~0 >= ~b~0); {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 05:53:22,281 INFO L290 TraceCheckUtils]: 30: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !false; {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 05:53:22,282 INFO L290 TraceCheckUtils]: 29: Hoare triple {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 05:53:22,282 INFO L290 TraceCheckUtils]: 28: Hoare triple {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:22,282 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:22,282 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-28 05:53:22,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-28 05:53:22,283 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-28 05:53:22,284 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:53:22,284 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:22,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2080608698] [2022-04-28 05:53:22,284 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:22,285 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [929875968] [2022-04-28 05:53:22,285 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [929875968] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:22,285 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:22,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 05:53:22,285 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:22,285 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1454857161] [2022-04-28 05:53:22,285 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1454857161] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:22,285 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:22,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:53:22,285 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1568494572] [2022-04-28 05:53:22,285 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:22,286 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-28 05:53:22,286 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:22,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:22,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:22,313 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:53:22,313 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:22,313 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:53:22,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:53:22,314 INFO L87 Difference]: Start difference. First operand 123 states and 172 transitions. Second operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:23,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:23,202 INFO L93 Difference]: Finished difference Result 137 states and 184 transitions. [2022-04-28 05:53:23,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:53:23,202 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-28 05:53:23,202 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:23,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:23,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-28 05:53:23,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:23,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-28 05:53:23,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 101 transitions. [2022-04-28 05:53:23,297 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:23,299 INFO L225 Difference]: With dead ends: 137 [2022-04-28 05:53:23,299 INFO L226 Difference]: Without dead ends: 135 [2022-04-28 05:53:23,299 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:53:23,299 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:53:23,300 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [70 Valid, 231 Invalid, 280 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 253 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:53:23,300 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-04-28 05:53:23,531 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 131. [2022-04-28 05:53:23,531 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:23,532 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:23,532 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:23,532 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:23,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:23,539 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-28 05:53:23,540 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-28 05:53:23,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:23,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:23,543 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-28 05:53:23,543 INFO L87 Difference]: Start difference. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-28 05:53:23,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:23,548 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-28 05:53:23,548 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-28 05:53:23,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:23,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:23,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:23,549 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:23,549 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:23,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 178 transitions. [2022-04-28 05:53:23,552 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 178 transitions. Word has length 47 [2022-04-28 05:53:23,552 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:23,553 INFO L495 AbstractCegarLoop]: Abstraction has 131 states and 178 transitions. [2022-04-28 05:53:23,553 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:23,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 178 transitions. [2022-04-28 05:53:23,740 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:23,740 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 178 transitions. [2022-04-28 05:53:23,741 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:53:23,741 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:23,741 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:23,759 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:23,943 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:23,943 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:23,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:23,944 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 3 times [2022-04-28 05:53:23,944 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:23,944 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [151201032] [2022-04-28 05:53:23,944 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:23,944 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 4 times [2022-04-28 05:53:23,944 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:23,944 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1977762097] [2022-04-28 05:53:23,944 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:23,944 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:23,961 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:23,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1308376473] [2022-04-28 05:53:23,961 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:23,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:23,962 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:23,969 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:23,970 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 05:53:24,004 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:24,004 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:24,004 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:53:24,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:24,013 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:24,114 INFO L272 TraceCheckUtils]: 0: Hoare triple {4637#true} call ULTIMATE.init(); {4637#true} is VALID [2022-04-28 05:53:24,114 INFO L290 TraceCheckUtils]: 1: Hoare triple {4637#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4637#true} is VALID [2022-04-28 05:53:24,114 INFO L290 TraceCheckUtils]: 2: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:24,114 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4637#true} {4637#true} #112#return; {4637#true} is VALID [2022-04-28 05:53:24,114 INFO L272 TraceCheckUtils]: 4: Hoare triple {4637#true} call #t~ret6 := main(); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 5: Hoare triple {4637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L272 TraceCheckUtils]: 6: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 7: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 8: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4637#true} {4637#true} #94#return; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 11: Hoare triple {4637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L272 TraceCheckUtils]: 12: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 15: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4637#true} {4637#true} #96#return; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L272 TraceCheckUtils]: 17: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 18: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 19: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L290 TraceCheckUtils]: 20: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:24,115 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4637#true} {4637#true} #98#return; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L272 TraceCheckUtils]: 22: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 23: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 24: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 25: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4637#true} {4637#true} #100#return; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 27: Hoare triple {4637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 28: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 29: Hoare triple {4637#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 30: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-28 05:53:24,116 INFO L290 TraceCheckUtils]: 31: Hoare triple {4637#true} assume !(~c~0 >= ~b~0); {4735#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:53:24,117 INFO L290 TraceCheckUtils]: 32: Hoare triple {4735#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4739#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:24,117 INFO L290 TraceCheckUtils]: 33: Hoare triple {4739#(< main_~b~0 main_~a~0)} assume !false; {4739#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:24,117 INFO L290 TraceCheckUtils]: 34: Hoare triple {4739#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4746#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 35: Hoare triple {4746#(< main_~b~0 main_~c~0)} assume !false; {4746#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 36: Hoare triple {4746#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4638#false} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 37: Hoare triple {4638#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4638#false} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 38: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 39: Hoare triple {4638#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4638#false} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 40: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 41: Hoare triple {4638#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4638#false} is VALID [2022-04-28 05:53:24,118 INFO L290 TraceCheckUtils]: 42: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:24,119 INFO L272 TraceCheckUtils]: 43: Hoare triple {4638#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4638#false} is VALID [2022-04-28 05:53:24,119 INFO L290 TraceCheckUtils]: 44: Hoare triple {4638#false} ~cond := #in~cond; {4638#false} is VALID [2022-04-28 05:53:24,119 INFO L290 TraceCheckUtils]: 45: Hoare triple {4638#false} assume 0 == ~cond; {4638#false} is VALID [2022-04-28 05:53:24,119 INFO L290 TraceCheckUtils]: 46: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:24,119 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:53:24,119 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:53:24,119 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:24,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1977762097] [2022-04-28 05:53:24,119 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:24,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1308376473] [2022-04-28 05:53:24,119 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1308376473] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:24,119 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:24,119 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:24,119 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:24,120 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [151201032] [2022-04-28 05:53:24,120 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [151201032] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:24,120 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:24,120 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:24,120 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1665024654] [2022-04-28 05:53:24,120 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:24,120 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-28 05:53:24,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:24,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:24,141 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:24,141 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:24,141 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:24,142 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:24,142 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:53:24,142 INFO L87 Difference]: Start difference. First operand 131 states and 178 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:24,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:24,586 INFO L93 Difference]: Finished difference Result 170 states and 230 transitions. [2022-04-28 05:53:24,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:53:24,586 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-28 05:53:24,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:24,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:24,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-28 05:53:24,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:24,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-28 05:53:24,589 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 102 transitions. [2022-04-28 05:53:24,656 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:24,658 INFO L225 Difference]: With dead ends: 170 [2022-04-28 05:53:24,658 INFO L226 Difference]: Without dead ends: 114 [2022-04-28 05:53:24,659 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:53:24,659 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 18 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:24,659 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 155 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:53:24,659 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-28 05:53:24,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-04-28 05:53:24,858 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:24,858 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:24,858 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:24,858 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:24,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:24,861 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-28 05:53:24,861 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-28 05:53:24,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:24,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:24,862 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-28 05:53:24,862 INFO L87 Difference]: Start difference. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-28 05:53:24,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:24,864 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-28 05:53:24,864 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-28 05:53:24,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:24,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:24,865 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:24,865 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:24,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:24,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 137 transitions. [2022-04-28 05:53:24,873 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 137 transitions. Word has length 47 [2022-04-28 05:53:24,873 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:24,873 INFO L495 AbstractCegarLoop]: Abstraction has 106 states and 137 transitions. [2022-04-28 05:53:24,873 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:24,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 137 transitions. [2022-04-28 05:53:25,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:25,027 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 137 transitions. [2022-04-28 05:53:25,028 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 05:53:25,028 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:25,028 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:25,045 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:25,228 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:25,228 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:25,229 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:25,229 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 1 times [2022-04-28 05:53:25,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:25,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [372245773] [2022-04-28 05:53:25,229 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:25,229 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 2 times [2022-04-28 05:53:25,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:25,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1749801907] [2022-04-28 05:53:25,229 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:25,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:25,248 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:25,249 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [426627936] [2022-04-28 05:53:25,249 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:25,249 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:25,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:25,250 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:25,251 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 05:53:25,284 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:25,285 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:25,285 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:53:25,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:25,293 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:25,411 INFO L272 TraceCheckUtils]: 0: Hoare triple {5567#true} call ULTIMATE.init(); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {5567#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5567#true} {5567#true} #112#return; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {5567#true} call #t~ret6 := main(); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {5567#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L272 TraceCheckUtils]: 6: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 7: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 8: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 9: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5567#true} {5567#true} #94#return; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 11: Hoare triple {5567#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L272 TraceCheckUtils]: 12: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 13: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 14: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,412 INFO L290 TraceCheckUtils]: 15: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5567#true} {5567#true} #96#return; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L272 TraceCheckUtils]: 17: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 18: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 19: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 20: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5567#true} {5567#true} #98#return; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L272 TraceCheckUtils]: 22: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 23: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 24: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 25: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5567#true} {5567#true} #100#return; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 27: Hoare triple {5567#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 28: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 29: Hoare triple {5567#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5567#true} is VALID [2022-04-28 05:53:25,413 INFO L290 TraceCheckUtils]: 30: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-28 05:53:25,414 INFO L290 TraceCheckUtils]: 31: Hoare triple {5567#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:25,414 INFO L290 TraceCheckUtils]: 32: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:25,414 INFO L272 TraceCheckUtils]: 33: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,414 INFO L290 TraceCheckUtils]: 34: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,414 INFO L290 TraceCheckUtils]: 35: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,414 INFO L290 TraceCheckUtils]: 36: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,415 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:25,415 INFO L272 TraceCheckUtils]: 38: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,415 INFO L290 TraceCheckUtils]: 39: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,415 INFO L290 TraceCheckUtils]: 40: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,415 INFO L290 TraceCheckUtils]: 41: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,416 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:25,416 INFO L272 TraceCheckUtils]: 43: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:25,416 INFO L290 TraceCheckUtils]: 44: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:25,416 INFO L290 TraceCheckUtils]: 45: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:25,416 INFO L290 TraceCheckUtils]: 46: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:25,416 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:25,417 INFO L272 TraceCheckUtils]: 48: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5717#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:25,417 INFO L290 TraceCheckUtils]: 49: Hoare triple {5717#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5721#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:25,417 INFO L290 TraceCheckUtils]: 50: Hoare triple {5721#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5568#false} is VALID [2022-04-28 05:53:25,418 INFO L290 TraceCheckUtils]: 51: Hoare triple {5568#false} assume !false; {5568#false} is VALID [2022-04-28 05:53:25,418 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:53:25,418 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:53:25,418 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:25,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1749801907] [2022-04-28 05:53:25,418 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:25,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [426627936] [2022-04-28 05:53:25,418 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [426627936] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:25,418 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:25,418 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:25,418 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:25,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [372245773] [2022-04-28 05:53:25,418 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [372245773] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:25,418 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:25,418 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:25,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1976014547] [2022-04-28 05:53:25,419 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:25,419 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-28 05:53:25,419 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:25,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:25,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:25,451 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:25,451 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:25,451 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:25,451 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:53:25,452 INFO L87 Difference]: Start difference. First operand 106 states and 137 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:25,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:25,921 INFO L93 Difference]: Finished difference Result 158 states and 221 transitions. [2022-04-28 05:53:25,921 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:53:25,921 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-28 05:53:25,921 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:25,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:25,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:53:25,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:25,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:53:25,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:53:25,966 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:25,969 INFO L225 Difference]: With dead ends: 158 [2022-04-28 05:53:25,969 INFO L226 Difference]: Without dead ends: 156 [2022-04-28 05:53:25,969 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:53:25,970 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:25,970 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:53:25,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-28 05:53:26,270 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 140. [2022-04-28 05:53:26,271 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:26,271 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:26,271 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:26,272 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:26,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:26,276 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-28 05:53:26,276 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-28 05:53:26,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:26,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:26,276 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-28 05:53:26,279 INFO L87 Difference]: Start difference. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-28 05:53:26,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:26,283 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-28 05:53:26,283 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-28 05:53:26,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:26,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:26,283 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:26,283 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:26,284 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:26,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 194 transitions. [2022-04-28 05:53:26,293 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 194 transitions. Word has length 52 [2022-04-28 05:53:26,293 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:26,293 INFO L495 AbstractCegarLoop]: Abstraction has 140 states and 194 transitions. [2022-04-28 05:53:26,293 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:26,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 140 states and 194 transitions. [2022-04-28 05:53:26,529 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:26,530 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 194 transitions. [2022-04-28 05:53:26,530 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 05:53:26,530 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:26,530 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:26,546 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:26,735 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:26,735 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:26,736 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:26,736 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 1 times [2022-04-28 05:53:26,736 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:26,736 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1991170897] [2022-04-28 05:53:26,736 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:26,736 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 2 times [2022-04-28 05:53:26,736 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:26,736 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [205703543] [2022-04-28 05:53:26,736 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:26,736 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:26,747 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:26,747 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [393921742] [2022-04-28 05:53:26,747 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:26,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:26,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:26,748 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:26,749 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 05:53:26,793 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:26,793 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:26,794 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-28 05:53:26,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:26,805 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:27,407 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-28 05:53:27,407 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 5: Hoare triple {6637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 11: Hoare triple {6637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L272 TraceCheckUtils]: 17: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:27,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L272 TraceCheckUtils]: 22: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,409 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-28 05:53:27,410 INFO L290 TraceCheckUtils]: 27: Hoare triple {6637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:27,410 INFO L290 TraceCheckUtils]: 28: Hoare triple {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:27,411 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:53:27,411 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:53:27,411 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:53:27,412 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:53:27,412 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:53:27,412 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:53:27,412 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:53:27,413 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:53:27,414 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:53:27,414 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:53:27,414 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:53:27,414 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:53:27,414 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:53:27,415 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:53:27,415 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:53:27,415 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:27,415 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:27,415 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,416 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:53:27,416 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:53:27,416 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:27,416 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:27,416 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:27,417 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:53:27,417 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:53:27,418 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:53:27,418 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:53:27,419 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:53:27,419 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:53:27,419 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:53:27,420 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:53:27,421 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:53:27,421 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:53:27,421 INFO L290 TraceCheckUtils]: 62: Hoare triple {6835#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-28 05:53:27,421 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-28 05:53:27,421 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:53:27,422 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:51,742 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-28 05:53:51,743 INFO L290 TraceCheckUtils]: 62: Hoare triple {6835#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-28 05:53:51,743 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:53:51,744 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:53:51,744 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:53:51,745 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:53:51,932 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:53:51,933 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:53:51,933 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:53:51,992 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:53:51,992 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:53:51,993 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:53:51,993 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:51,993 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:51,993 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:51,993 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:53:51,994 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:53:51,994 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:51,994 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:51,994 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:51,994 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:53:51,995 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:53:51,995 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:53:51,996 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:53:51,996 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:53:51,996 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:53:51,997 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:53:51,997 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:53:51,998 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:53:51,998 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:53:51,998 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:53:51,998 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:53:51,999 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:53:52,000 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:53:52,001 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:53:52,001 INFO L290 TraceCheckUtils]: 28: Hoare triple {6637#true} assume !false; {6637#true} is VALID [2022-04-28 05:53:52,001 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:53:52,001 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L272 TraceCheckUtils]: 22: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L272 TraceCheckUtils]: 17: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:52,001 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 11: Hoare triple {6637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {6637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6637#true} is VALID [2022-04-28 05:53:52,002 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-28 05:53:52,002 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:53:52,003 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:52,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [205703543] [2022-04-28 05:53:52,003 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:52,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [393921742] [2022-04-28 05:53:52,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [393921742] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:52,003 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:52,003 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 05:53:52,003 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:52,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1991170897] [2022-04-28 05:53:52,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1991170897] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:52,003 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:52,003 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:53:52,003 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1298287691] [2022-04-28 05:53:52,003 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:52,004 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:53:52,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:52,004 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:53:52,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:52,042 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:53:52,042 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:52,043 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:53:52,043 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:53:52,043 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:53:54,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:54,162 INFO L93 Difference]: Finished difference Result 200 states and 283 transitions. [2022-04-28 05:53:54,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:53:54,162 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:53:54,163 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:54,163 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:53:54,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-28 05:53:54,169 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:53:54,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-28 05:53:54,173 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 131 transitions. [2022-04-28 05:53:54,296 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:54,301 INFO L225 Difference]: With dead ends: 200 [2022-04-28 05:53:54,301 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 05:53:54,301 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:53:54,302 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 53 mSDsluCounter, 265 mSDsCounter, 0 mSdLazyCounter, 634 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s 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.8s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:54,302 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.8s Time] [2022-04-28 05:53:54,302 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 05:53:54,713 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 193. [2022-04-28 05:53:54,713 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:54,714 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:54,721 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:54,721 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:54,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:54,729 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-28 05:53:54,729 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-28 05:53:54,729 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:54,730 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:54,730 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-28 05:53:54,730 INFO L87 Difference]: Start difference. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-28 05:53:54,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:54,735 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-28 05:53:54,735 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-28 05:53:54,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:54,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:54,736 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:54,736 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:54,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:54,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 275 transitions. [2022-04-28 05:53:54,743 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 275 transitions. Word has length 64 [2022-04-28 05:53:54,743 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:54,743 INFO L495 AbstractCegarLoop]: Abstraction has 193 states and 275 transitions. [2022-04-28 05:53:54,743 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:53:54,743 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 193 states and 275 transitions. [2022-04-28 05:53:55,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 275 edges. 275 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:55,114 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 275 transitions. [2022-04-28 05:53:55,114 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:53:55,114 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:55,114 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:55,131 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:55,319 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 05:53:55,319 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:55,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:55,320 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 3 times [2022-04-28 05:53:55,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:55,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [145081854] [2022-04-28 05:53:55,320 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:55,320 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 4 times [2022-04-28 05:53:55,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:55,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [987208760] [2022-04-28 05:53:55,320 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:55,320 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:55,336 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:55,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [95241247] [2022-04-28 05:53:55,336 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:55,336 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:55,336 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:55,337 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:55,338 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 05:53:55,379 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:55,379 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:55,380 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:53:55,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:55,390 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:55,621 INFO L272 TraceCheckUtils]: 0: Hoare triple {8229#true} call ULTIMATE.init(); {8229#true} is VALID [2022-04-28 05:53:55,621 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:53:55,621 INFO L290 TraceCheckUtils]: 2: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8229#true} {8229#true} #112#return; {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L272 TraceCheckUtils]: 4: Hoare triple {8229#true} call #t~ret6 := main(); {8229#true} is VALID [2022-04-28 05:53:55,621 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:53:55,621 INFO L272 TraceCheckUtils]: 6: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L290 TraceCheckUtils]: 9: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8229#true} {8229#true} #94#return; {8229#true} is VALID [2022-04-28 05:53:55,621 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:53:55,621 INFO L272 TraceCheckUtils]: 12: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:53:55,621 INFO L290 TraceCheckUtils]: 13: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L290 TraceCheckUtils]: 14: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L290 TraceCheckUtils]: 15: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8229#true} {8229#true} #96#return; {8229#true} is VALID [2022-04-28 05:53:55,622 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:53:55,622 INFO L290 TraceCheckUtils]: 18: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L290 TraceCheckUtils]: 19: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L290 TraceCheckUtils]: 20: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8229#true} {8229#true} #98#return; {8229#true} is VALID [2022-04-28 05:53:55,622 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:53:55,622 INFO L290 TraceCheckUtils]: 23: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L290 TraceCheckUtils]: 24: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L290 TraceCheckUtils]: 25: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,622 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8229#true} {8229#true} #100#return; {8229#true} is VALID [2022-04-28 05:53:55,622 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:53:55,622 INFO L290 TraceCheckUtils]: 28: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:53:55,622 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:53:55,622 INFO L290 TraceCheckUtils]: 30: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:53:55,623 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:53:55,623 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:53:55,623 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:53:55,631 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:53:55,631 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:53:55,632 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:53:55,632 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:53:55,632 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:53:55,632 INFO L290 TraceCheckUtils]: 39: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,632 INFO L290 TraceCheckUtils]: 40: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,632 INFO L290 TraceCheckUtils]: 41: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,644 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:53:55,644 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:53:55,644 INFO L290 TraceCheckUtils]: 44: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,644 INFO L290 TraceCheckUtils]: 45: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,644 INFO L290 TraceCheckUtils]: 46: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,645 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:53:55,645 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:53:55,645 INFO L290 TraceCheckUtils]: 49: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,645 INFO L290 TraceCheckUtils]: 50: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,645 INFO L290 TraceCheckUtils]: 51: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,645 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:53:55,645 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:53:55,645 INFO L290 TraceCheckUtils]: 54: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,645 INFO L290 TraceCheckUtils]: 55: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,645 INFO L290 TraceCheckUtils]: 56: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,646 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:53:55,646 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:53:55,646 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:53:55,647 INFO L290 TraceCheckUtils]: 60: Hoare triple {8415#(< 0 main_~c~0)} assume !false; {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:55,647 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:53:55,647 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:53:55,647 INFO L290 TraceCheckUtils]: 63: Hoare triple {8425#(< 0 main_~b~0)} assume !false; {8425#(< 0 main_~b~0)} is VALID [2022-04-28 05:53:55,648 INFO L290 TraceCheckUtils]: 64: Hoare triple {8425#(< 0 main_~b~0)} assume !(0 != ~b~0); {8230#false} is VALID [2022-04-28 05:53:55,648 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:53:55,648 INFO L290 TraceCheckUtils]: 66: Hoare triple {8230#false} ~cond := #in~cond; {8230#false} is VALID [2022-04-28 05:53:55,648 INFO L290 TraceCheckUtils]: 67: Hoare triple {8230#false} assume 0 == ~cond; {8230#false} is VALID [2022-04-28 05:53:55,648 INFO L290 TraceCheckUtils]: 68: Hoare triple {8230#false} assume !false; {8230#false} is VALID [2022-04-28 05:53:55,648 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 05:53:55,648 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:55,842 INFO L290 TraceCheckUtils]: 68: Hoare triple {8230#false} assume !false; {8230#false} is VALID [2022-04-28 05:53:55,842 INFO L290 TraceCheckUtils]: 67: Hoare triple {8230#false} assume 0 == ~cond; {8230#false} is VALID [2022-04-28 05:53:55,842 INFO L290 TraceCheckUtils]: 66: Hoare triple {8230#false} ~cond := #in~cond; {8230#false} is VALID [2022-04-28 05:53:55,843 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:53:55,843 INFO L290 TraceCheckUtils]: 64: Hoare triple {8425#(< 0 main_~b~0)} assume !(0 != ~b~0); {8230#false} is VALID [2022-04-28 05:53:55,843 INFO L290 TraceCheckUtils]: 63: Hoare triple {8425#(< 0 main_~b~0)} assume !false; {8425#(< 0 main_~b~0)} is VALID [2022-04-28 05:53:55,843 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:53:55,847 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:53:55,847 INFO L290 TraceCheckUtils]: 60: Hoare triple {8415#(< 0 main_~c~0)} assume !false; {8415#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:55,848 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:53:55,848 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:53:55,849 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:53:55,849 INFO L290 TraceCheckUtils]: 56: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,849 INFO L290 TraceCheckUtils]: 55: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,849 INFO L290 TraceCheckUtils]: 54: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,849 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:53:55,849 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:53:55,850 INFO L290 TraceCheckUtils]: 51: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,850 INFO L290 TraceCheckUtils]: 50: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,850 INFO L290 TraceCheckUtils]: 49: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,850 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:53:55,850 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:53:55,850 INFO L290 TraceCheckUtils]: 46: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,850 INFO L290 TraceCheckUtils]: 45: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,850 INFO L290 TraceCheckUtils]: 44: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,850 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:53:55,851 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:53:55,851 INFO L290 TraceCheckUtils]: 41: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,851 INFO L290 TraceCheckUtils]: 40: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,851 INFO L290 TraceCheckUtils]: 39: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,851 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:53:55,863 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:53:55,863 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:53:55,864 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:53:55,864 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:53:55,864 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:53:55,865 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:53:55,865 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:53:55,865 INFO L290 TraceCheckUtils]: 30: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:53:55,865 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:53:55,865 INFO L290 TraceCheckUtils]: 28: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-28 05:53:55,865 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:53:55,865 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8229#true} {8229#true} #100#return; {8229#true} is VALID [2022-04-28 05:53:55,865 INFO L290 TraceCheckUtils]: 25: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,865 INFO L290 TraceCheckUtils]: 24: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,865 INFO L290 TraceCheckUtils]: 23: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,865 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:53:55,865 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8229#true} {8229#true} #98#return; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 19: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,866 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:53:55,866 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8229#true} {8229#true} #96#return; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 15: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 14: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L272 TraceCheckUtils]: 12: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:53:55,866 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:53:55,866 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8229#true} {8229#true} #94#return; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L272 TraceCheckUtils]: 6: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {8229#true} is VALID [2022-04-28 05:53:55,866 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:53:55,866 INFO L272 TraceCheckUtils]: 4: Hoare triple {8229#true} call #t~ret6 := main(); {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8229#true} {8229#true} #112#return; {8229#true} is VALID [2022-04-28 05:53:55,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-28 05:53:55,867 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:53:55,867 INFO L272 TraceCheckUtils]: 0: Hoare triple {8229#true} call ULTIMATE.init(); {8229#true} is VALID [2022-04-28 05:53:55,867 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 05:53:55,867 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:55,867 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [987208760] [2022-04-28 05:53:55,867 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:55,867 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [95241247] [2022-04-28 05:53:55,867 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [95241247] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:55,867 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:55,867 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 05:53:55,867 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:55,867 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [145081854] [2022-04-28 05:53:55,868 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [145081854] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:55,868 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:55,868 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:53:55,868 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [118498815] [2022-04-28 05:53:55,868 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:55,868 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-28 05:53:55,868 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:55,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:55,900 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:55,900 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:53:55,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:55,901 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:53:55,901 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:53:55,901 INFO L87 Difference]: Start difference. First operand 193 states and 275 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:57,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:57,598 INFO L93 Difference]: Finished difference Result 288 states and 424 transitions. [2022-04-28 05:53:57,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:53:57,598 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-28 05:53:57,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:57,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:57,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 05:53:57,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:57,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 05:53:57,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-28 05:53:57,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:57,722 INFO L225 Difference]: With dead ends: 288 [2022-04-28 05:53:57,722 INFO L226 Difference]: Without dead ends: 281 [2022-04-28 05:53:57,722 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 134 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:53:57,723 INFO L413 NwaCegarLoop]: 87 mSDtfsCounter, 46 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 83 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:57,723 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 318 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:53:57,723 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2022-04-28 05:53:58,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 208. [2022-04-28 05:53:58,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:58,213 INFO L82 GeneralOperation]: Start isEquivalent. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:58,213 INFO L74 IsIncluded]: Start isIncluded. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:58,213 INFO L87 Difference]: Start difference. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:58,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:58,221 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-28 05:53:58,221 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-28 05:53:58,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:58,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:58,222 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-28 05:53:58,223 INFO L87 Difference]: Start difference. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-28 05:53:58,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:58,230 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-28 05:53:58,230 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-28 05:53:58,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:58,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:58,231 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:58,231 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:58,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:58,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 296 transitions. [2022-04-28 05:53:58,236 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 296 transitions. Word has length 69 [2022-04-28 05:53:58,237 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:58,237 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 296 transitions. [2022-04-28 05:53:58,237 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:58,237 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 296 transitions. [2022-04-28 05:53:58,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:58,678 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 296 transitions. [2022-04-28 05:53:58,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-28 05:53:58,691 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:58,691 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:58,709 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:58,892 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 05:53:58,892 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:58,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:58,892 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 1 times [2022-04-28 05:53:58,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:58,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [49440939] [2022-04-28 05:53:58,893 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:58,893 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 2 times [2022-04-28 05:53:58,893 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:58,893 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1548059164] [2022-04-28 05:53:58,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:58,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:58,908 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:58,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1360633558] [2022-04-28 05:53:58,908 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:58,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:58,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:58,909 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:58,912 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 05:53:58,952 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:58,953 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:58,953 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:53:58,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:58,964 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:59,147 INFO L272 TraceCheckUtils]: 0: Hoare triple {10231#true} call ULTIMATE.init(); {10231#true} is VALID [2022-04-28 05:53:59,147 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:53:59,147 INFO L290 TraceCheckUtils]: 2: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10231#true} {10231#true} #112#return; {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L272 TraceCheckUtils]: 4: Hoare triple {10231#true} call #t~ret6 := main(); {10231#true} is VALID [2022-04-28 05:53:59,147 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:53:59,147 INFO L272 TraceCheckUtils]: 6: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L290 TraceCheckUtils]: 7: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L290 TraceCheckUtils]: 8: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10231#true} {10231#true} #94#return; {10231#true} is VALID [2022-04-28 05:53:59,147 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:53:59,147 INFO L272 TraceCheckUtils]: 12: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:53:59,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L290 TraceCheckUtils]: 14: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L290 TraceCheckUtils]: 15: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10231#true} {10231#true} #96#return; {10231#true} is VALID [2022-04-28 05:53:59,148 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:53:59,148 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L290 TraceCheckUtils]: 19: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10231#true} {10231#true} #98#return; {10231#true} is VALID [2022-04-28 05:53:59,148 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:53:59,148 INFO L290 TraceCheckUtils]: 23: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,148 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10231#true} {10231#true} #100#return; {10231#true} is VALID [2022-04-28 05:53:59,148 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:53:59,148 INFO L290 TraceCheckUtils]: 28: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:53:59,148 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:53:59,148 INFO L290 TraceCheckUtils]: 30: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:53:59,149 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:53:59,149 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:53:59,149 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:53:59,149 INFO L290 TraceCheckUtils]: 34: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,149 INFO L290 TraceCheckUtils]: 35: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,149 INFO L290 TraceCheckUtils]: 36: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,150 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:53:59,150 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:53:59,150 INFO L290 TraceCheckUtils]: 39: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,150 INFO L290 TraceCheckUtils]: 40: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,150 INFO L290 TraceCheckUtils]: 41: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,150 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:53:59,151 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:53:59,151 INFO L290 TraceCheckUtils]: 44: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,151 INFO L290 TraceCheckUtils]: 45: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,151 INFO L290 TraceCheckUtils]: 46: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,151 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:53:59,151 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:53:59,151 INFO L290 TraceCheckUtils]: 49: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,151 INFO L290 TraceCheckUtils]: 50: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,151 INFO L290 TraceCheckUtils]: 51: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,152 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:53:59,152 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:53:59,153 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:53:59,153 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:53:59,153 INFO L290 TraceCheckUtils]: 56: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,153 INFO L290 TraceCheckUtils]: 57: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,153 INFO L290 TraceCheckUtils]: 58: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,153 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:53:59,153 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:53:59,153 INFO L290 TraceCheckUtils]: 61: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,154 INFO L290 TraceCheckUtils]: 62: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,154 INFO L290 TraceCheckUtils]: 63: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,154 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:53:59,154 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:53:59,154 INFO L290 TraceCheckUtils]: 66: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,154 INFO L290 TraceCheckUtils]: 67: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,154 INFO L290 TraceCheckUtils]: 68: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,155 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:53:59,155 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:53:59,156 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:53:59,156 INFO L290 TraceCheckUtils]: 72: Hoare triple {10452#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10232#false} is VALID [2022-04-28 05:53:59,156 INFO L290 TraceCheckUtils]: 73: Hoare triple {10232#false} assume !false; {10232#false} is VALID [2022-04-28 05:53:59,156 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 5 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-28 05:53:59,156 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:59,348 INFO L290 TraceCheckUtils]: 73: Hoare triple {10232#false} assume !false; {10232#false} is VALID [2022-04-28 05:53:59,349 INFO L290 TraceCheckUtils]: 72: Hoare triple {10452#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10232#false} is VALID [2022-04-28 05:53:59,349 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:53:59,349 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:53:59,350 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:53:59,350 INFO L290 TraceCheckUtils]: 68: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,350 INFO L290 TraceCheckUtils]: 67: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,350 INFO L290 TraceCheckUtils]: 66: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,350 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:53:59,351 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:53:59,351 INFO L290 TraceCheckUtils]: 63: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,351 INFO L290 TraceCheckUtils]: 62: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,351 INFO L290 TraceCheckUtils]: 61: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,351 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:53:59,351 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:53:59,352 INFO L290 TraceCheckUtils]: 58: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,352 INFO L290 TraceCheckUtils]: 57: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,352 INFO L290 TraceCheckUtils]: 56: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,352 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:53:59,352 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:53:59,354 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:53:59,354 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:53:59,354 INFO L290 TraceCheckUtils]: 51: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,354 INFO L290 TraceCheckUtils]: 50: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,354 INFO L290 TraceCheckUtils]: 49: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,354 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:53:59,355 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:53:59,355 INFO L290 TraceCheckUtils]: 46: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,355 INFO L290 TraceCheckUtils]: 45: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,355 INFO L290 TraceCheckUtils]: 44: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,355 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:53:59,356 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:53:59,356 INFO L290 TraceCheckUtils]: 41: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,356 INFO L290 TraceCheckUtils]: 40: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,356 INFO L290 TraceCheckUtils]: 39: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,356 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:53:59,356 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:53:59,356 INFO L290 TraceCheckUtils]: 36: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,356 INFO L290 TraceCheckUtils]: 35: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,357 INFO L290 TraceCheckUtils]: 34: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,357 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:53:59,360 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:53:59,360 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:53:59,360 INFO L290 TraceCheckUtils]: 30: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:53:59,360 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:53:59,360 INFO L290 TraceCheckUtils]: 28: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-28 05:53:59,360 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:53:59,360 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10231#true} {10231#true} #100#return; {10231#true} is VALID [2022-04-28 05:53:59,360 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,360 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,360 INFO L290 TraceCheckUtils]: 23: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,360 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:53:59,360 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10231#true} {10231#true} #98#return; {10231#true} is VALID [2022-04-28 05:53:59,360 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 19: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,361 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:53:59,361 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10231#true} {10231#true} #96#return; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 15: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 14: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 13: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L272 TraceCheckUtils]: 12: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:53:59,361 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:53:59,361 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10231#true} {10231#true} #94#return; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 8: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 7: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L272 TraceCheckUtils]: 6: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {10231#true} is VALID [2022-04-28 05:53:59,361 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:53:59,361 INFO L272 TraceCheckUtils]: 4: Hoare triple {10231#true} call #t~ret6 := main(); {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10231#true} {10231#true} #112#return; {10231#true} is VALID [2022-04-28 05:53:59,361 INFO L290 TraceCheckUtils]: 2: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-28 05:53:59,361 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:53:59,362 INFO L272 TraceCheckUtils]: 0: Hoare triple {10231#true} call ULTIMATE.init(); {10231#true} is VALID [2022-04-28 05:53:59,362 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 113 trivial. 0 not checked. [2022-04-28 05:53:59,362 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:59,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1548059164] [2022-04-28 05:53:59,362 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:59,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1360633558] [2022-04-28 05:53:59,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1360633558] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:53:59,362 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:53:59,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-28 05:53:59,362 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:59,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [49440939] [2022-04-28 05:53:59,363 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [49440939] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:59,363 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:59,363 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:59,363 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [265211030] [2022-04-28 05:53:59,363 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:59,363 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 74 [2022-04-28 05:53:59,363 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:59,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:59,393 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:59,393 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:59,393 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:59,393 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:59,393 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:53:59,393 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:54:00,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:00,027 INFO L93 Difference]: Finished difference Result 214 states and 301 transitions. [2022-04-28 05:54:00,027 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:54:00,027 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:54:00,027 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:00,027 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:54:00,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 05:54:00,028 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:54:00,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 05:54:00,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 05:54:00,070 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:54:00,081 INFO L225 Difference]: With dead ends: 214 [2022-04-28 05:54:00,082 INFO L226 Difference]: Without dead ends: 212 [2022-04-28 05:54:00,082 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:54:00,082 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:54:00,083 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:54:00,083 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-28 05:54:00,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-28 05:54:00,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:00,564 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:54:00,565 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:54:00,565 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:54:00,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:00,569 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-28 05:54:00,569 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:54:00,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:00,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:00,570 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:54:00,571 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:54:00,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:00,575 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-28 05:54:00,575 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:54:00,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:00,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:00,575 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:00,575 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:00,576 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:54:00,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 299 transitions. [2022-04-28 05:54:00,580 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 299 transitions. Word has length 74 [2022-04-28 05:54:00,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:00,580 INFO L495 AbstractCegarLoop]: Abstraction has 212 states and 299 transitions. [2022-04-28 05:54:00,580 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:54:00,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 212 states and 299 transitions. [2022-04-28 05:54:01,060 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:54:01,060 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:54:01,061 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-28 05:54:01,061 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:01,061 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:54:01,077 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:54:01,267 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:54:01,267 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:01,267 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:01,267 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 1 times [2022-04-28 05:54:01,267 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:01,267 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [123703245] [2022-04-28 05:54:01,268 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:01,268 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 2 times [2022-04-28 05:54:01,268 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:01,268 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1579997108] [2022-04-28 05:54:01,268 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:01,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:01,283 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:01,284 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [128609789] [2022-04-28 05:54:01,284 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:01,284 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:01,284 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:01,289 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:54:01,290 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:54:01,331 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:01,331 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:01,332 INFO L263 TraceCheckSpWp]: Trace formula consists of 209 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 05:54:01,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:01,355 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:01,530 INFO L272 TraceCheckUtils]: 0: Hoare triple {11959#true} call ULTIMATE.init(); {11959#true} is VALID [2022-04-28 05:54:01,531 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:54:01,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11959#true} {11959#true} #112#return; {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L272 TraceCheckUtils]: 4: Hoare triple {11959#true} call #t~ret6 := main(); {11959#true} is VALID [2022-04-28 05:54:01,531 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:54:01,531 INFO L272 TraceCheckUtils]: 6: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L290 TraceCheckUtils]: 7: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L290 TraceCheckUtils]: 8: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L290 TraceCheckUtils]: 9: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11959#true} {11959#true} #94#return; {11959#true} is VALID [2022-04-28 05:54:01,531 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:54:01,531 INFO L272 TraceCheckUtils]: 12: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L290 TraceCheckUtils]: 15: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,531 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11959#true} {11959#true} #96#return; {11959#true} is VALID [2022-04-28 05:54:01,531 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:54:01,531 INFO L290 TraceCheckUtils]: 18: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L290 TraceCheckUtils]: 19: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L290 TraceCheckUtils]: 20: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11959#true} {11959#true} #98#return; {11959#true} is VALID [2022-04-28 05:54:01,532 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:54:01,532 INFO L290 TraceCheckUtils]: 23: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L290 TraceCheckUtils]: 24: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L290 TraceCheckUtils]: 25: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11959#true} {11959#true} #100#return; {11959#true} is VALID [2022-04-28 05:54:01,532 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:54:01,532 INFO L290 TraceCheckUtils]: 28: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:01,532 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:54:01,532 INFO L290 TraceCheckUtils]: 30: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:01,532 INFO L290 TraceCheckUtils]: 31: Hoare triple {11959#true} assume !(~c~0 >= ~b~0); {11959#true} is VALID [2022-04-28 05:54:01,532 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:54:01,532 INFO L290 TraceCheckUtils]: 33: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:01,532 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:54:01,532 INFO L290 TraceCheckUtils]: 35: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:01,532 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:54:01,532 INFO L290 TraceCheckUtils]: 37: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:01,533 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:54:01,533 INFO L290 TraceCheckUtils]: 39: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,533 INFO L290 TraceCheckUtils]: 40: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,533 INFO L290 TraceCheckUtils]: 41: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,533 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11959#true} {11959#true} #102#return; {11959#true} is VALID [2022-04-28 05:54:01,533 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:54:01,533 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:54:01,533 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:54:01,534 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:54:01,534 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:54:01,534 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:54:01,534 INFO L290 TraceCheckUtils]: 49: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,534 INFO L290 TraceCheckUtils]: 50: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,534 INFO L290 TraceCheckUtils]: 51: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,535 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:54:01,535 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:54:01,535 INFO L290 TraceCheckUtils]: 54: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:01,535 INFO L290 TraceCheckUtils]: 55: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:01,535 INFO L290 TraceCheckUtils]: 56: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:01,536 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:54:01,536 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:54:01,536 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:54:01,537 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:54:01,537 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:54:01,538 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:54:01,538 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:54:01,539 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:54:01,540 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:54:01,540 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:54:01,540 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:54:01,541 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:54:01,541 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:54:01,542 INFO L290 TraceCheckUtils]: 70: Hoare triple {12176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11960#false} is VALID [2022-04-28 05:54:01,542 INFO L290 TraceCheckUtils]: 71: Hoare triple {11960#false} assume !false; {11960#false} is VALID [2022-04-28 05:54:01,542 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:54:01,542 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:12,015 INFO L290 TraceCheckUtils]: 71: Hoare triple {11960#false} assume !false; {11960#false} is VALID [2022-04-28 05:54:12,016 INFO L290 TraceCheckUtils]: 70: Hoare triple {12176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11960#false} is VALID [2022-04-28 05:54:12,016 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:54:12,017 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:54:12,017 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:54:12,017 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:54:12,018 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:54:12,018 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:54:12,018 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:54:12,019 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:54:12,019 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:54:12,019 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:54:12,020 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:54:12,020 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:54:12,021 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:54:12,021 INFO L290 TraceCheckUtils]: 56: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,021 INFO L290 TraceCheckUtils]: 55: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,021 INFO L290 TraceCheckUtils]: 54: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,021 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:54:12,022 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:54:12,022 INFO L290 TraceCheckUtils]: 51: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,022 INFO L290 TraceCheckUtils]: 50: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,022 INFO L290 TraceCheckUtils]: 49: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,022 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:54:12,023 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:54:12,023 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:54:12,023 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:54:12,024 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:54:12,024 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:54:12,024 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11959#true} {11959#true} #102#return; {11959#true} is VALID [2022-04-28 05:54:12,024 INFO L290 TraceCheckUtils]: 41: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,024 INFO L290 TraceCheckUtils]: 40: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,024 INFO L290 TraceCheckUtils]: 39: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,024 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:54:12,024 INFO L290 TraceCheckUtils]: 37: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:12,024 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:54:12,024 INFO L290 TraceCheckUtils]: 35: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:12,024 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:54:12,024 INFO L290 TraceCheckUtils]: 33: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:12,024 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:54:12,024 INFO L290 TraceCheckUtils]: 31: Hoare triple {11959#true} assume !(~c~0 >= ~b~0); {11959#true} is VALID [2022-04-28 05:54:12,024 INFO L290 TraceCheckUtils]: 30: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:12,025 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:54:12,025 INFO L290 TraceCheckUtils]: 28: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-28 05:54:12,025 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:54:12,025 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11959#true} {11959#true} #100#return; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 25: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 23: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,025 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:54:12,025 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11959#true} {11959#true} #98#return; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 20: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 19: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 18: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,025 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:54:12,025 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11959#true} {11959#true} #96#return; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 15: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 14: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,025 INFO L272 TraceCheckUtils]: 12: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:54:12,025 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:54:12,025 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11959#true} {11959#true} #94#return; {11959#true} is VALID [2022-04-28 05:54:12,026 INFO L290 TraceCheckUtils]: 9: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,026 INFO L290 TraceCheckUtils]: 8: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-28 05:54:12,026 INFO L290 TraceCheckUtils]: 7: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-28 05:54:12,026 INFO L272 TraceCheckUtils]: 6: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {11959#true} is VALID [2022-04-28 05:54:12,026 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:54:12,026 INFO L272 TraceCheckUtils]: 4: Hoare triple {11959#true} call #t~ret6 := main(); {11959#true} is VALID [2022-04-28 05:54:12,026 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11959#true} {11959#true} #112#return; {11959#true} is VALID [2022-04-28 05:54:12,026 INFO L290 TraceCheckUtils]: 2: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-28 05:54:12,026 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:54:12,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {11959#true} call ULTIMATE.init(); {11959#true} is VALID [2022-04-28 05:54:12,026 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:54:12,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:12,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1579997108] [2022-04-28 05:54:12,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:12,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [128609789] [2022-04-28 05:54:12,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [128609789] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:12,027 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:12,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:54:12,027 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:12,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [123703245] [2022-04-28 05:54:12,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [123703245] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:12,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:12,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:54:12,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2020967088] [2022-04-28 05:54:12,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:12,027 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:54:12,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:12,028 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:54:12,066 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:54:12,067 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:54:12,067 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:12,067 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:54:12,067 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:54:12,067 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:54:12,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:12,900 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-04-28 05:54:12,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:54:12,900 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:54:12,900 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:12,900 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:54:12,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-28 05:54:12,901 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:54:12,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-28 05:54:12,902 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-28 05:54:12,947 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:54:12,950 INFO L225 Difference]: With dead ends: 226 [2022-04-28 05:54:12,950 INFO L226 Difference]: Without dead ends: 224 [2022-04-28 05:54:12,951 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:54:12,952 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:54:12,952 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:54:12,953 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-28 05:54:13,442 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-04-28 05:54:13,442 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:13,442 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:54:13,443 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:54:13,443 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:54:13,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:13,447 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-28 05:54:13,447 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:54:13,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:13,448 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:13,448 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:54:13,448 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:54:13,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:13,452 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-28 05:54:13,453 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:54:13,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:13,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:13,453 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:13,453 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:13,454 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:54:13,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 308 transitions. [2022-04-28 05:54:13,458 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 308 transitions. Word has length 72 [2022-04-28 05:54:13,458 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:13,458 INFO L495 AbstractCegarLoop]: Abstraction has 224 states and 308 transitions. [2022-04-28 05:54:13,459 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:54:13,459 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 308 transitions. [2022-04-28 05:54:13,965 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:54:13,965 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:54:13,966 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-28 05:54:13,966 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:13,966 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:54:13,982 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:54:14,175 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:54:14,175 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:14,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:14,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 3 times [2022-04-28 05:54:14,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:14,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1347926516] [2022-04-28 05:54:14,176 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:14,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 4 times [2022-04-28 05:54:14,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:14,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [127695427] [2022-04-28 05:54:14,176 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:14,176 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:14,186 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:14,187 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [640738610] [2022-04-28 05:54:14,187 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:54:14,187 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:14,187 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:14,188 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:54:14,188 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:54:14,227 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:54:14,227 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:14,228 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 05:54:14,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:14,240 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:14,413 INFO L272 TraceCheckUtils]: 0: Hoare triple {13754#true} call ULTIMATE.init(); {13754#true} is VALID [2022-04-28 05:54:14,413 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:54:14,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13754#true} {13754#true} #112#return; {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L272 TraceCheckUtils]: 4: Hoare triple {13754#true} call #t~ret6 := main(); {13754#true} is VALID [2022-04-28 05:54:14,413 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:54:14,413 INFO L272 TraceCheckUtils]: 6: Hoare triple {13754#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L290 TraceCheckUtils]: 7: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L290 TraceCheckUtils]: 8: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L290 TraceCheckUtils]: 9: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13754#true} {13754#true} #94#return; {13754#true} is VALID [2022-04-28 05:54:14,413 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:54:14,413 INFO L272 TraceCheckUtils]: 12: Hoare triple {13754#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L290 TraceCheckUtils]: 13: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L290 TraceCheckUtils]: 14: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,413 INFO L290 TraceCheckUtils]: 15: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13754#true} {13754#true} #96#return; {13754#true} is VALID [2022-04-28 05:54:14,414 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:54:14,414 INFO L290 TraceCheckUtils]: 18: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L290 TraceCheckUtils]: 19: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13754#true} {13754#true} #98#return; {13754#true} is VALID [2022-04-28 05:54:14,414 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:54:14,414 INFO L290 TraceCheckUtils]: 23: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L290 TraceCheckUtils]: 24: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L290 TraceCheckUtils]: 25: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13754#true} {13754#true} #100#return; {13754#true} is VALID [2022-04-28 05:54:14,414 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:54:14,414 INFO L290 TraceCheckUtils]: 28: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:54:14,414 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:54:14,414 INFO L290 TraceCheckUtils]: 30: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:54:14,414 INFO L290 TraceCheckUtils]: 31: Hoare triple {13754#true} assume !(~c~0 >= ~b~0); {13754#true} is VALID [2022-04-28 05:54:14,414 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:54:14,414 INFO L290 TraceCheckUtils]: 33: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:54:14,414 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:54:14,415 INFO L290 TraceCheckUtils]: 35: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-28 05:54:14,415 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:54:14,415 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:54:14,415 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:54:14,415 INFO L290 TraceCheckUtils]: 39: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,415 INFO L290 TraceCheckUtils]: 40: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,415 INFO L290 TraceCheckUtils]: 41: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,416 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:54:14,416 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:54:14,416 INFO L290 TraceCheckUtils]: 44: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,416 INFO L290 TraceCheckUtils]: 45: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,416 INFO L290 TraceCheckUtils]: 46: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,417 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:54:14,417 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:54:14,417 INFO L290 TraceCheckUtils]: 49: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,417 INFO L290 TraceCheckUtils]: 50: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,417 INFO L290 TraceCheckUtils]: 51: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,417 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:54:14,417 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:54:14,417 INFO L290 TraceCheckUtils]: 54: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-28 05:54:14,417 INFO L290 TraceCheckUtils]: 55: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-28 05:54:14,417 INFO L290 TraceCheckUtils]: 56: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-28 05:54:14,418 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:54:14,418 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:54:14,419 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:54:14,419 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:54:14,419 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:54:14,419 INFO L290 TraceCheckUtils]: 62: Hoare triple {13755#false} assume !false; {13755#false} is VALID [2022-04-28 05:54:14,419 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:54:14,419 INFO L290 TraceCheckUtils]: 64: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-28 05:54:14,419 INFO L290 TraceCheckUtils]: 65: Hoare triple {13755#false} assume !(0 == ~cond); {13755#false} is VALID [2022-04-28 05:54:14,419 INFO L290 TraceCheckUtils]: 66: Hoare triple {13755#false} assume true; {13755#false} is VALID [2022-04-28 05:54:14,420 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13755#false} {13755#false} #102#return; {13755#false} is VALID [2022-04-28 05:54:14,420 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:54:14,420 INFO L290 TraceCheckUtils]: 69: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-28 05:54:14,420 INFO L290 TraceCheckUtils]: 70: Hoare triple {13755#false} assume !(0 == ~cond); {13755#false} is VALID [2022-04-28 05:54:14,420 INFO L290 TraceCheckUtils]: 71: Hoare triple {13755#false} assume true; {13755#false} is VALID [2022-04-28 05:54:14,420 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13755#false} {13755#false} #104#return; {13755#false} is VALID [2022-04-28 05:54:14,420 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:54:14,420 INFO L290 TraceCheckUtils]: 74: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-28 05:54:14,420 INFO L290 TraceCheckUtils]: 75: Hoare triple {13755#false} assume 0 == ~cond; {13755#false} is VALID [2022-04-28 05:54:14,420 INFO L290 TraceCheckUtils]: 76: Hoare triple {13755#false} assume !false; {13755#false} is VALID [2022-04-28 05:54:14,420 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:54:14,420 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:54:14,420 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:14,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [127695427] [2022-04-28 05:54:14,420 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:14,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [640738610] [2022-04-28 05:54:14,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [640738610] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:14,421 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:14,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:54:14,421 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:14,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1347926516] [2022-04-28 05:54:14,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1347926516] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:14,421 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:14,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:54:14,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [659555114] [2022-04-28 05:54:14,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:14,421 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:54:14,422 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:14,422 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:54:14,453 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:54:14,453 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:54:14,453 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:14,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:54:14,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:54:14,454 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:54:15,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:15,186 INFO L93 Difference]: Finished difference Result 367 states and 500 transitions. [2022-04-28 05:54:15,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:54:15,186 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:54:15,186 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:15,186 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:54:15,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-28 05:54:15,187 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:54:15,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-28 05:54:15,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 85 transitions. [2022-04-28 05:54:15,240 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:54:15,244 INFO L225 Difference]: With dead ends: 367 [2022-04-28 05:54:15,244 INFO L226 Difference]: Without dead ends: 230 [2022-04-28 05:54:15,247 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:54:15,247 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:54:15,247 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:54:15,248 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-28 05:54:15,772 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 214. [2022-04-28 05:54:15,773 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:15,773 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:54:15,773 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:54:15,774 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:54:15,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:15,778 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-28 05:54:15,778 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-28 05:54:15,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:15,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:15,779 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:54:15,779 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:54:15,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:15,783 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-28 05:54:15,783 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-28 05:54:15,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:15,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:15,784 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:15,784 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:15,784 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:54:15,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 289 transitions. [2022-04-28 05:54:15,788 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 289 transitions. Word has length 77 [2022-04-28 05:54:15,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:15,789 INFO L495 AbstractCegarLoop]: Abstraction has 214 states and 289 transitions. [2022-04-28 05:54:15,789 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:54:15,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 214 states and 289 transitions. [2022-04-28 05:54:16,283 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:54:16,283 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 289 transitions. [2022-04-28 05:54:16,284 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-28 05:54:16,284 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:16,284 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:54:16,300 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-04-28 05:54:16,484 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:54:16,485 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:16,485 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:16,485 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 5 times [2022-04-28 05:54:16,485 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:16,485 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [69052186] [2022-04-28 05:54:16,485 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:16,485 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 6 times [2022-04-28 05:54:16,485 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:16,485 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [847337152] [2022-04-28 05:54:16,485 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:16,486 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:16,508 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:16,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [264664874] [2022-04-28 05:54:16,508 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:54:16,508 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:16,508 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:16,509 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:54:16,510 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-28 05:54:16,558 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:54:16,558 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:16,559 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:54:16,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:16,572 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:17,643 INFO L272 TraceCheckUtils]: 0: Hoare triple {15614#true} call ULTIMATE.init(); {15614#true} is VALID [2022-04-28 05:54:17,643 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:54:17,643 INFO L290 TraceCheckUtils]: 2: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,643 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15614#true} {15614#true} #112#return; {15614#true} is VALID [2022-04-28 05:54:17,643 INFO L272 TraceCheckUtils]: 4: Hoare triple {15614#true} call #t~ret6 := main(); {15614#true} is VALID [2022-04-28 05:54:17,643 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:54:17,643 INFO L272 TraceCheckUtils]: 6: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:54:17,643 INFO L290 TraceCheckUtils]: 7: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,643 INFO L290 TraceCheckUtils]: 8: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,643 INFO L290 TraceCheckUtils]: 9: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15614#true} {15614#true} #94#return; {15614#true} is VALID [2022-04-28 05:54:17,644 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:54:17,644 INFO L272 TraceCheckUtils]: 12: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 13: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 14: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 15: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15614#true} {15614#true} #96#return; {15614#true} is VALID [2022-04-28 05:54:17,644 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:54:17,644 INFO L290 TraceCheckUtils]: 18: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 19: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 20: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15614#true} {15614#true} #98#return; {15614#true} is VALID [2022-04-28 05:54:17,644 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:54:17,644 INFO L290 TraceCheckUtils]: 23: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 24: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L290 TraceCheckUtils]: 25: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,644 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15614#true} {15614#true} #100#return; {15614#true} is VALID [2022-04-28 05:54:17,647 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:54:17,648 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:54:17,648 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:54:17,648 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:54:17,649 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:54:17,650 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:54:17,650 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:54:17,650 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:54:17,651 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:54:17,651 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:54:17,651 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:54:17,651 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:54:17,652 INFO L290 TraceCheckUtils]: 39: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,652 INFO L290 TraceCheckUtils]: 40: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,652 INFO L290 TraceCheckUtils]: 41: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,652 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:54:17,652 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:54:17,653 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:54:17,653 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:54:17,653 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:54:17,654 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:54:17,654 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:54:17,654 INFO L290 TraceCheckUtils]: 49: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,654 INFO L290 TraceCheckUtils]: 50: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,655 INFO L290 TraceCheckUtils]: 51: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,655 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:54:17,655 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:54:17,655 INFO L290 TraceCheckUtils]: 54: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,655 INFO L290 TraceCheckUtils]: 55: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,655 INFO L290 TraceCheckUtils]: 56: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,656 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:54:17,656 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:54:17,657 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:54:17,657 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:54:17,658 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:54:17,667 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:54:17,668 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:54:17,668 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:54:17,668 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:54:17,669 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:54:17,669 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:54:17,669 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:54:17,669 INFO L290 TraceCheckUtils]: 69: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:17,669 INFO L290 TraceCheckUtils]: 70: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:17,669 INFO L290 TraceCheckUtils]: 71: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:17,670 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:54:17,671 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:54:17,671 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:54:17,671 INFO L290 TraceCheckUtils]: 75: Hoare triple {15853#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15615#false} is VALID [2022-04-28 05:54:17,671 INFO L290 TraceCheckUtils]: 76: Hoare triple {15615#false} assume !false; {15615#false} is VALID [2022-04-28 05:54:17,672 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:54:17,672 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:54,918 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:54:55,028 INFO L290 TraceCheckUtils]: 76: Hoare triple {15615#false} assume !false; {15615#false} is VALID [2022-04-28 05:54:55,029 INFO L290 TraceCheckUtils]: 75: Hoare triple {15853#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15615#false} is VALID [2022-04-28 05:54:55,029 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:54:55,029 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:54:55,030 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:54:55,030 INFO L290 TraceCheckUtils]: 71: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:55,030 INFO L290 TraceCheckUtils]: 70: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:55,030 INFO L290 TraceCheckUtils]: 69: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:55,030 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:54:55,031 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:54:55,031 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:54:55,031 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:54:55,031 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:54:55,032 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:54:57,033 WARN 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 UNKNOWN [2022-04-28 05:54:57,034 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:54:57,035 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:54:57,656 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:54:57,656 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:54:57,657 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:54:57,657 INFO L290 TraceCheckUtils]: 56: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:57,657 INFO L290 TraceCheckUtils]: 55: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:57,657 INFO L290 TraceCheckUtils]: 54: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:57,657 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:54:57,658 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:54:57,658 INFO L290 TraceCheckUtils]: 51: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:57,658 INFO L290 TraceCheckUtils]: 50: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:57,658 INFO L290 TraceCheckUtils]: 49: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:57,658 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:54:57,659 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:54:57,659 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:54:57,660 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:54:57,660 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:54:57,660 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:54:57,660 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:54:57,661 INFO L290 TraceCheckUtils]: 41: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:57,661 INFO L290 TraceCheckUtils]: 40: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:57,661 INFO L290 TraceCheckUtils]: 39: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:57,661 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:54:57,661 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:54:57,663 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:54:57,664 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:54:57,667 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:54:57,667 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:54:58,287 INFO L290 TraceCheckUtils]: 32: Hoare triple {15999#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:58,288 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:54:58,289 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:54:58,289 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:54:58,290 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:54:58,290 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:54:58,290 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15614#true} {15614#true} #100#return; {15614#true} is VALID [2022-04-28 05:54:58,290 INFO L290 TraceCheckUtils]: 25: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:58,290 INFO L290 TraceCheckUtils]: 24: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:58,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:58,290 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:54:58,290 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15614#true} {15614#true} #98#return; {15614#true} is VALID [2022-04-28 05:54:58,290 INFO L290 TraceCheckUtils]: 20: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:58,290 INFO L290 TraceCheckUtils]: 19: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:58,290 INFO L290 TraceCheckUtils]: 18: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:58,290 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:54:58,291 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15614#true} {15614#true} #96#return; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 15: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 14: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 13: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L272 TraceCheckUtils]: 12: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:54:58,291 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:54:58,291 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15614#true} {15614#true} #94#return; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 9: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 8: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 7: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L272 TraceCheckUtils]: 6: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {15614#true} is VALID [2022-04-28 05:54:58,291 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:54:58,291 INFO L272 TraceCheckUtils]: 4: Hoare triple {15614#true} call #t~ret6 := main(); {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15614#true} {15614#true} #112#return; {15614#true} is VALID [2022-04-28 05:54:58,291 INFO L290 TraceCheckUtils]: 2: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-28 05:54:58,291 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:54:58,291 INFO L272 TraceCheckUtils]: 0: Hoare triple {15614#true} call ULTIMATE.init(); {15614#true} is VALID [2022-04-28 05:54:58,292 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:54:58,292 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:58,292 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [847337152] [2022-04-28 05:54:58,292 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:58,292 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [264664874] [2022-04-28 05:54:58,292 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [264664874] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:58,292 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:58,292 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 24 [2022-04-28 05:54:58,292 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:58,292 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [69052186] [2022-04-28 05:54:58,292 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [69052186] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:58,292 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:58,292 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:54:58,293 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1302695950] [2022-04-28 05:54:58,293 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:58,293 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:54:58,293 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:58,293 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:54:58,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:58,339 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:54:58,339 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:58,339 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:54:58,339 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=465, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:54:58,339 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:55:00,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:00,874 INFO L93 Difference]: Finished difference Result 285 states and 377 transitions. [2022-04-28 05:55:00,874 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:55:00,875 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:55:00,875 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:00,875 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:55:00,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-28 05:55:00,877 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:55:00,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-28 05:55:00,878 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 148 transitions. [2022-04-28 05:55:01,009 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:55:01,014 INFO L225 Difference]: With dead ends: 285 [2022-04-28 05:55:01,014 INFO L226 Difference]: Without dead ends: 283 [2022-04-28 05:55:01,015 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:55:01,015 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 64 mSDsluCounter, 291 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 341 SdHoareTripleChecker+Invalid, 725 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:01,015 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.8s Time] [2022-04-28 05:55:01,015 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-04-28 05:55:01,674 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 265. [2022-04-28 05:55:01,674 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:01,675 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:55:01,675 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:55:01,675 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:55:01,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:01,680 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-28 05:55:01,680 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-28 05:55:01,681 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:01,681 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:01,681 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:55:01,682 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:55:01,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:01,687 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-28 05:55:01,687 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-28 05:55:01,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:01,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:01,687 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:01,687 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:01,688 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:55:01,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 357 transitions. [2022-04-28 05:55:01,693 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 357 transitions. Word has length 77 [2022-04-28 05:55:01,693 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:01,693 INFO L495 AbstractCegarLoop]: Abstraction has 265 states and 357 transitions. [2022-04-28 05:55:01,693 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:55:01,693 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 357 transitions. [2022-04-28 05:55:02,325 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:55:02,325 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 357 transitions. [2022-04-28 05:55:02,326 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-28 05:55:02,326 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:02,326 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:55:02,344 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 05:55:02,531 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:55:02,533 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:02,533 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:02,534 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 1 times [2022-04-28 05:55:02,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:02,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [809622675] [2022-04-28 05:55:02,534 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:02,534 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 2 times [2022-04-28 05:55:02,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:02,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1263592751] [2022-04-28 05:55:02,534 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:02,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:02,543 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:02,543 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1054102253] [2022-04-28 05:55:02,543 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:55:02,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:02,544 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:02,544 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:55:02,545 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:55:02,590 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:55:02,590 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:02,592 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-28 05:55:02,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:02,605 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:03,390 INFO L272 TraceCheckUtils]: 0: Hoare triple {17779#true} call ULTIMATE.init(); {17779#true} is VALID [2022-04-28 05:55:03,390 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:55:03,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,390 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17779#true} {17779#true} #112#return; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L272 TraceCheckUtils]: 4: Hoare triple {17779#true} call #t~ret6 := main(); {17779#true} is VALID [2022-04-28 05:55:03,391 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:55:03,391 INFO L272 TraceCheckUtils]: 6: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 7: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 8: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 9: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17779#true} {17779#true} #94#return; {17779#true} is VALID [2022-04-28 05:55:03,391 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:55:03,391 INFO L272 TraceCheckUtils]: 12: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 15: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17779#true} {17779#true} #96#return; {17779#true} is VALID [2022-04-28 05:55:03,391 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:55:03,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 19: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L290 TraceCheckUtils]: 20: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,391 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17779#true} {17779#true} #98#return; {17779#true} is VALID [2022-04-28 05:55:03,392 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:55:03,392 INFO L290 TraceCheckUtils]: 23: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,392 INFO L290 TraceCheckUtils]: 24: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,392 INFO L290 TraceCheckUtils]: 25: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,392 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17779#true} {17779#true} #100#return; {17779#true} is VALID [2022-04-28 05:55:03,392 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:55:03,392 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:55:03,393 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:55:03,393 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:55:03,394 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:55:03,394 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:55:03,394 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:55:03,394 INFO L290 TraceCheckUtils]: 34: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,394 INFO L290 TraceCheckUtils]: 35: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,394 INFO L290 TraceCheckUtils]: 36: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,395 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:55:03,395 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:55:03,395 INFO L290 TraceCheckUtils]: 39: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,395 INFO L290 TraceCheckUtils]: 40: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,395 INFO L290 TraceCheckUtils]: 41: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,396 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:55:03,396 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:55:03,396 INFO L290 TraceCheckUtils]: 44: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,396 INFO L290 TraceCheckUtils]: 45: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,396 INFO L290 TraceCheckUtils]: 46: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,397 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:55:03,397 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:55:03,397 INFO L290 TraceCheckUtils]: 49: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,397 INFO L290 TraceCheckUtils]: 50: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,397 INFO L290 TraceCheckUtils]: 51: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,398 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:55:03,398 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:55:03,398 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:55:03,399 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:55:03,399 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:55:03,399 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:55:03,399 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:55:03,400 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:55:03,400 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:55:03,401 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:55:03,401 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:55:03,401 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:55:03,402 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:55:03,402 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:55:03,402 INFO L290 TraceCheckUtils]: 66: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,402 INFO L290 TraceCheckUtils]: 67: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,402 INFO L290 TraceCheckUtils]: 68: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,403 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:55:03,403 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:55:03,403 INFO L290 TraceCheckUtils]: 71: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:03,403 INFO L290 TraceCheckUtils]: 72: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:03,403 INFO L290 TraceCheckUtils]: 73: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:03,403 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:55:03,404 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:55:03,405 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:55:03,405 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:55:03,405 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:55:03,406 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:55:03,406 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:55:03,407 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:55:03,407 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:55:03,408 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:55:03,408 INFO L290 TraceCheckUtils]: 84: Hoare triple {18044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17780#false} is VALID [2022-04-28 05:55:03,408 INFO L290 TraceCheckUtils]: 85: Hoare triple {17780#false} assume !false; {17780#false} is VALID [2022-04-28 05:55:03,408 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:55:03,409 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:43,690 INFO L290 TraceCheckUtils]: 85: Hoare triple {17780#false} assume !false; {17780#false} is VALID [2022-04-28 05:55:43,690 INFO L290 TraceCheckUtils]: 84: Hoare triple {18044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17780#false} is VALID [2022-04-28 05:55:43,690 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:55:43,691 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:55:43,691 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:55:43,692 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:55:43,790 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:55:43,800 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:55:43,800 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:55:43,833 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:55:43,834 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:55:43,835 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:55:43,835 INFO L290 TraceCheckUtils]: 73: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:43,835 INFO L290 TraceCheckUtils]: 72: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:43,835 INFO L290 TraceCheckUtils]: 71: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:43,835 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:55:43,835 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:55:43,836 INFO L290 TraceCheckUtils]: 68: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:43,836 INFO L290 TraceCheckUtils]: 67: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:43,836 INFO L290 TraceCheckUtils]: 66: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:43,836 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:55:43,837 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:55:43,837 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:55:43,837 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:55:43,837 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:55:43,837 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:55:43,838 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:55:43,839 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:55:43,839 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:55:43,839 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:55:43,839 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:55:43,840 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:55:44,032 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:55:44,033 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:55:44,033 INFO L290 TraceCheckUtils]: 51: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,033 INFO L290 TraceCheckUtils]: 50: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,033 INFO L290 TraceCheckUtils]: 49: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,033 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:55:44,033 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:55:44,034 INFO L290 TraceCheckUtils]: 46: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,034 INFO L290 TraceCheckUtils]: 45: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,034 INFO L290 TraceCheckUtils]: 44: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,034 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:55:44,034 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:55:44,034 INFO L290 TraceCheckUtils]: 41: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,035 INFO L290 TraceCheckUtils]: 40: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,035 INFO L290 TraceCheckUtils]: 39: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,035 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:55:44,035 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:55:44,035 INFO L290 TraceCheckUtils]: 36: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,035 INFO L290 TraceCheckUtils]: 35: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,036 INFO L290 TraceCheckUtils]: 34: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,036 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:55:44,036 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:55:44,037 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:55:44,037 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:55:44,038 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:55:44,039 INFO L290 TraceCheckUtils]: 28: Hoare triple {17779#true} assume !false; {17779#true} is VALID [2022-04-28 05:55:44,039 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:55:44,039 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17779#true} {17779#true} #100#return; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,039 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:55:44,039 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17779#true} {17779#true} #98#return; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 18: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,039 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:55:44,039 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17779#true} {17779#true} #96#return; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 15: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 14: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L290 TraceCheckUtils]: 13: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,039 INFO L272 TraceCheckUtils]: 12: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:55:44,039 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:55:44,040 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17779#true} {17779#true} #94#return; {17779#true} is VALID [2022-04-28 05:55:44,040 INFO L290 TraceCheckUtils]: 9: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-28 05:55:44,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-28 05:55:44,040 INFO L272 TraceCheckUtils]: 6: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {17779#true} is VALID [2022-04-28 05:55:44,040 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:55:44,040 INFO L272 TraceCheckUtils]: 4: Hoare triple {17779#true} call #t~ret6 := main(); {17779#true} is VALID [2022-04-28 05:55:44,040 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17779#true} {17779#true} #112#return; {17779#true} is VALID [2022-04-28 05:55:44,040 INFO L290 TraceCheckUtils]: 2: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-28 05:55:44,040 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:55:44,040 INFO L272 TraceCheckUtils]: 0: Hoare triple {17779#true} call ULTIMATE.init(); {17779#true} is VALID [2022-04-28 05:55:44,040 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:55:44,041 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:44,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1263592751] [2022-04-28 05:55:44,041 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:44,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1054102253] [2022-04-28 05:55:44,041 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1054102253] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:44,041 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:44,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 23 [2022-04-28 05:55:44,041 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:44,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [809622675] [2022-04-28 05:55:44,041 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [809622675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:44,041 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:44,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:55:44,041 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1711850150] [2022-04-28 05:55:44,041 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:44,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:55:44,042 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:44,042 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:55:44,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:44,090 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:55:44,090 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:44,090 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:55:44,090 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=420, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:55:44,091 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:55:47,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:47,895 INFO L93 Difference]: Finished difference Result 348 states and 475 transitions. [2022-04-28 05:55:47,895 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:55:47,895 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:55:47,895 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:47,895 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:55:47,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-28 05:55:47,897 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:55:47,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-28 05:55:47,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 143 transitions. [2022-04-28 05:55:48,047 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:55:48,053 INFO L225 Difference]: With dead ends: 348 [2022-04-28 05:55:48,053 INFO L226 Difference]: Without dead ends: 345 [2022-04-28 05:55:48,054 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 149 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 128 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=112, Invalid=590, Unknown=0, NotChecked=0, Total=702 [2022-04-28 05:55:48,054 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:55:48,054 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:55:48,055 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 345 states. [2022-04-28 05:55:48,916 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 345 to 330. [2022-04-28 05:55:48,917 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:48,917 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:55:48,918 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:55:48,918 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:55:48,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:48,925 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-28 05:55:48,925 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-28 05:55:48,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:48,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:48,926 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:55:48,927 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:55:48,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:48,933 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-28 05:55:48,933 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-28 05:55:48,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:48,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:48,934 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:48,934 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:48,935 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:55:48,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 330 states to 330 states and 456 transitions. [2022-04-28 05:55:48,943 INFO L78 Accepts]: Start accepts. Automaton has 330 states and 456 transitions. Word has length 86 [2022-04-28 05:55:48,943 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:48,943 INFO L495 AbstractCegarLoop]: Abstraction has 330 states and 456 transitions. [2022-04-28 05:55:48,943 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:55:48,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 330 states and 456 transitions. [2022-04-28 05:55:49,880 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:55:49,881 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 456 transitions. [2022-04-28 05:55:49,881 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:55:49,881 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:49,881 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:55:49,905 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:55:50,095 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:55:50,095 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:50,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:50,096 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 3 times [2022-04-28 05:55:50,096 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:50,096 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1691871147] [2022-04-28 05:55:50,096 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:50,096 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 4 times [2022-04-28 05:55:50,096 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:50,096 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1448443635] [2022-04-28 05:55:50,096 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:50,097 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:50,106 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:50,106 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [966126833] [2022-04-28 05:55:50,106 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:55:50,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:50,107 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:50,107 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:55:50,108 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:55:50,152 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:55:50,152 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:50,153 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 76 conjunts are in the unsatisfiable core [2022-04-28 05:55:50,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:50,170 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:36,201 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:56:42,638 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:56:48,136 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:56:56,087 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:57:00,617 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:57:06,713 INFO L272 TraceCheckUtils]: 0: Hoare triple {20371#true} call ULTIMATE.init(); {20371#true} is VALID [2022-04-28 05:57:06,713 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:57:06,713 INFO L290 TraceCheckUtils]: 2: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20371#true} {20371#true} #112#return; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L272 TraceCheckUtils]: 4: Hoare triple {20371#true} call #t~ret6 := main(); {20371#true} is VALID [2022-04-28 05:57:06,714 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:57:06,714 INFO L272 TraceCheckUtils]: 6: Hoare triple {20371#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 7: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 8: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 9: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20371#true} {20371#true} #94#return; {20371#true} is VALID [2022-04-28 05:57:06,714 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:57:06,714 INFO L272 TraceCheckUtils]: 12: Hoare triple {20371#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 13: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 14: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 15: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20371#true} {20371#true} #96#return; {20371#true} is VALID [2022-04-28 05:57:06,714 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:57:06,714 INFO L290 TraceCheckUtils]: 18: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 19: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,715 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20371#true} {20371#true} #98#return; {20371#true} is VALID [2022-04-28 05:57:06,715 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:57:06,715 INFO L290 TraceCheckUtils]: 23: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,715 INFO L290 TraceCheckUtils]: 24: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,715 INFO L290 TraceCheckUtils]: 25: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,715 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20371#true} {20371#true} #100#return; {20371#true} is VALID [2022-04-28 05:57:06,715 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:57:06,715 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:57:06,716 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:57:06,716 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:57:06,716 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:57:06,717 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:57:06,717 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:57:06,718 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:57:06,718 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:57:06,718 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:57:06,719 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:57:06,719 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:57:06,719 INFO L290 TraceCheckUtils]: 39: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,719 INFO L290 TraceCheckUtils]: 40: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,719 INFO L290 TraceCheckUtils]: 41: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,719 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:57:06,720 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:57:06,720 INFO L290 TraceCheckUtils]: 44: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,720 INFO L290 TraceCheckUtils]: 45: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,720 INFO L290 TraceCheckUtils]: 46: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,720 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:57:06,720 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:57:06,720 INFO L290 TraceCheckUtils]: 49: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,721 INFO L290 TraceCheckUtils]: 50: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,721 INFO L290 TraceCheckUtils]: 51: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,721 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:57:06,721 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:57:06,721 INFO L290 TraceCheckUtils]: 54: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,721 INFO L290 TraceCheckUtils]: 55: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,721 INFO L290 TraceCheckUtils]: 56: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,722 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:57:06,723 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:57:06,723 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:57:06,723 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:57:06,724 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:57:06,724 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:57:06,724 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:57:06,725 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:57:06,725 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:57:06,725 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:57:06,726 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:57:06,726 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:57:06,727 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:57:06,727 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:57:06,727 INFO L290 TraceCheckUtils]: 71: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-28 05:57:06,727 INFO L290 TraceCheckUtils]: 72: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-28 05:57:06,727 INFO L290 TraceCheckUtils]: 73: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-28 05:57:06,728 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:57:06,728 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:57:06,728 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:57:06,728 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:57:06,728 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:57:06,729 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:57:06,730 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:57:06,732 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:57:06,733 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:57:06,733 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:57:08,735 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:57:08,737 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:57:08,738 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:57:08,744 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:57:08,744 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:57:08,745 INFO L290 TraceCheckUtils]: 89: Hoare triple {20655#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20372#false} is VALID [2022-04-28 05:57:08,745 INFO L290 TraceCheckUtils]: 90: Hoare triple {20372#false} assume !false; {20372#false} is VALID [2022-04-28 05:57:08,745 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:57:08,745 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:02,393 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:58:07,558 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:07,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1448443635] [2022-04-28 05:58:07,558 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:07,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [966126833] [2022-04-28 05:58:07,558 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [966126833] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:58:07,558 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:58:07,558 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-28 05:58:07,558 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:07,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1691871147] [2022-04-28 05:58:07,559 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1691871147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:07,559 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:07,559 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 05:58:07,559 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1945185035] [2022-04-28 05:58:07,559 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:07,559 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 05:58:07,559 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:07,559 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 05:58:09,635 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 05:58:09,635 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 05:58:09,635 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:09,636 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 05:58:09,636 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=107, Invalid=595, Unknown=0, NotChecked=0, Total=702 [2022-04-28 05:58:09,636 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 05:58:15,464 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 05:58:24,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:24,489 INFO L93 Difference]: Finished difference Result 418 states and 579 transitions. [2022-04-28 05:58:24,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 05:58:24,490 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 05:58:24,490 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:24,490 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 05:58:24,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-28 05:58:24,492 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 05:58:24,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-28 05:58:24,493 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 175 transitions. [2022-04-28 05:58:26,865 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 05:58:26,874 INFO L225 Difference]: With dead ends: 418 [2022-04-28 05:58:26,874 INFO L226 Difference]: Without dead ends: 415 [2022-04-28 05:58:26,875 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 98 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 210 ImplicationChecksByTransitivity, 7.5s TimeCoverageRelationStatistics Valid=172, Invalid=950, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 05:58:26,875 INFO L413 NwaCegarLoop]: 59 mSDtfsCounter, 66 mSDsluCounter, 355 mSDsCounter, 0 mSdLazyCounter, 1125 mSolverCounterSat, 66 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 414 SdHoareTripleChecker+Invalid, 1192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 1125 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:26,875 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 414 Invalid, 1192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 1125 Invalid, 1 Unknown, 0 Unchecked, 6.3s Time] [2022-04-28 05:58:26,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 415 states. [2022-04-28 05:58:27,954 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 415 to 395. [2022-04-28 05:58:27,954 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:27,954 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 05:58:27,955 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 05:58:27,955 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 05:58:27,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:27,964 INFO L93 Difference]: Finished difference Result 415 states and 575 transitions. [2022-04-28 05:58:27,964 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 575 transitions. [2022-04-28 05:58:27,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:27,965 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:27,966 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 05:58:27,966 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 05:58:27,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:27,975 INFO L93 Difference]: Finished difference Result 415 states and 575 transitions. [2022-04-28 05:58:27,975 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 575 transitions. [2022-04-28 05:58:27,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:27,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:27,976 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:27,976 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:27,977 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 05:58:27,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 395 states to 395 states and 555 transitions. [2022-04-28 05:58:27,988 INFO L78 Accepts]: Start accepts. Automaton has 395 states and 555 transitions. Word has length 91 [2022-04-28 05:58:27,988 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:27,988 INFO L495 AbstractCegarLoop]: Abstraction has 395 states and 555 transitions. [2022-04-28 05:58:27,988 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 05:58:27,988 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 395 states and 555 transitions. [2022-04-28 05:58:29,626 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 05:58:29,626 INFO L276 IsEmpty]: Start isEmpty. Operand 395 states and 555 transitions. [2022-04-28 05:58:29,627 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 05:58:29,627 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:29,627 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:29,647 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:29,827 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 05:58:29,828 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:29,828 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:29,828 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 7 times [2022-04-28 05:58:29,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:29,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [500574125] [2022-04-28 05:58:29,829 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:29,829 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 8 times [2022-04-28 05:58:29,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:29,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1455031253] [2022-04-28 05:58:29,829 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:29,829 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:29,851 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:29,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2010061804] [2022-04-28 05:58:29,852 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:29,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:29,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:29,853 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:29,853 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-28 05:58:29,909 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:29,910 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:29,911 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 85 conjunts are in the unsatisfiable core [2022-04-28 05:58:29,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:29,925 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:50,184 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:05,032 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:59:05,229 INFO L272 TraceCheckUtils]: 0: Hoare triple {23242#true} call ULTIMATE.init(); {23242#true} is VALID [2022-04-28 05:59:05,229 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 05:59:05,230 INFO L290 TraceCheckUtils]: 2: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23242#true} {23242#true} #112#return; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {23242#true} call #t~ret6 := main(); {23242#true} is VALID [2022-04-28 05:59:05,230 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 05:59:05,230 INFO L272 TraceCheckUtils]: 6: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23242#true} {23242#true} #94#return; {23242#true} is VALID [2022-04-28 05:59:05,230 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 05:59:05,230 INFO L272 TraceCheckUtils]: 12: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 13: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 14: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 15: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23242#true} {23242#true} #96#return; {23242#true} is VALID [2022-04-28 05:59:05,230 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 05:59:05,230 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,230 INFO L290 TraceCheckUtils]: 19: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,231 INFO L290 TraceCheckUtils]: 20: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,231 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23242#true} {23242#true} #98#return; {23242#true} is VALID [2022-04-28 05:59:05,231 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 05:59:05,231 INFO L290 TraceCheckUtils]: 23: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,231 INFO L290 TraceCheckUtils]: 24: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,231 INFO L290 TraceCheckUtils]: 25: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,231 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23242#true} {23242#true} #100#return; {23242#true} is VALID [2022-04-28 05:59:05,231 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 05:59:05,231 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 05:59:05,232 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 05:59:05,232 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 05:59:05,233 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 05:59:05,233 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 05:59:05,233 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 05:59:05,233 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:05,234 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 05:59:05,234 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 05:59:05,235 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 05:59:05,235 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 05:59:05,235 INFO L290 TraceCheckUtils]: 39: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:05,235 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 05:59:05,235 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 05:59:05,236 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 05:59:05,236 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 05:59:05,236 INFO L290 TraceCheckUtils]: 44: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,236 INFO L290 TraceCheckUtils]: 45: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,236 INFO L290 TraceCheckUtils]: 46: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,237 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 05:59:05,237 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 05:59:05,237 INFO L290 TraceCheckUtils]: 49: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,237 INFO L290 TraceCheckUtils]: 50: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,237 INFO L290 TraceCheckUtils]: 51: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,238 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 05:59:05,238 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 05:59:05,239 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 05:59:05,239 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 05:59:05,239 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 05:59:05,240 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 05:59:05,240 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 05:59:05,241 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 05:59:05,241 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 05:59:05,241 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 05:59:05,242 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 05:59:05,242 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 05:59:05,242 INFO L290 TraceCheckUtils]: 64: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:05,242 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 05:59:05,242 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 05:59:05,243 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 05:59:05,243 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 05:59:05,244 INFO L290 TraceCheckUtils]: 69: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:05,244 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 05:59:05,244 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 05:59:05,245 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_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:05,245 INFO L272 TraceCheckUtils]: 73: Hoare triple {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 05:59:05,245 INFO L290 TraceCheckUtils]: 74: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,245 INFO L290 TraceCheckUtils]: 75: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,245 INFO L290 TraceCheckUtils]: 76: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,246 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23242#true} {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:05,246 INFO L272 TraceCheckUtils]: 78: Hoare triple {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-28 05:59:05,246 INFO L290 TraceCheckUtils]: 79: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,246 INFO L290 TraceCheckUtils]: 80: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,246 INFO L290 TraceCheckUtils]: 81: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,247 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23242#true} {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:05,247 INFO L290 TraceCheckUtils]: 83: Hoare triple {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:59:05,248 INFO L290 TraceCheckUtils]: 84: Hoare triple {23474#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~v~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~c~0 main_~v~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23511#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~x~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) (* (- 1) main_~y~0 main_~r~0)) (* (- 1) main_~x~0) (* main_~p~0 main_~x~0) (* (* (- 1) main_~p~0 main_~x~0) (- 1)))))} is VALID [2022-04-28 05:59:05,249 INFO L290 TraceCheckUtils]: 85: Hoare triple {23511#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~x~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) (* (- 1) main_~y~0 main_~r~0)) (* (- 1) main_~x~0) (* main_~p~0 main_~x~0) (* (* (- 1) main_~p~0 main_~x~0) (- 1)))))} assume !false; {23511#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~x~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) (* (- 1) main_~y~0 main_~r~0)) (* (- 1) main_~x~0) (* main_~p~0 main_~x~0) (* (* (- 1) main_~p~0 main_~x~0) (- 1)))))} is VALID [2022-04-28 05:59:05,249 INFO L290 TraceCheckUtils]: 86: Hoare triple {23511#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~x~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) (* (- 1) main_~y~0 main_~r~0)) (* (- 1) main_~x~0) (* main_~p~0 main_~x~0) (* (* (- 1) main_~p~0 main_~x~0) (- 1)))))} assume !(~c~0 >= ~b~0); {23511#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~x~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) (* (- 1) main_~y~0 main_~r~0)) (* (- 1) main_~x~0) (* main_~p~0 main_~x~0) (* (* (- 1) main_~p~0 main_~x~0) (- 1)))))} is VALID [2022-04-28 05:59:05,251 INFO L290 TraceCheckUtils]: 87: Hoare triple {23511#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~x~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) (* (- 1) main_~y~0 main_~r~0)) (* (- 1) main_~x~0) (* main_~p~0 main_~x~0) (* (* (- 1) main_~p~0 main_~x~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; {23521#(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 05:59:05,252 INFO L290 TraceCheckUtils]: 88: Hoare triple {23521#(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; {23521#(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 05:59:05,252 INFO L290 TraceCheckUtils]: 89: Hoare triple {23521#(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 !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23521#(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 05:59:05,252 INFO L290 TraceCheckUtils]: 90: Hoare triple {23521#(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; {23521#(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 05:59:05,253 INFO L290 TraceCheckUtils]: 91: Hoare triple {23521#(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; {23521#(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 05:59:05,253 INFO L290 TraceCheckUtils]: 92: Hoare triple {23521#(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; {23521#(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 05:59:05,253 INFO L272 TraceCheckUtils]: 93: Hoare triple {23521#(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 05:59:05,253 INFO L290 TraceCheckUtils]: 94: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 05:59:05,253 INFO L290 TraceCheckUtils]: 95: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 05:59:05,253 INFO L290 TraceCheckUtils]: 96: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 05:59:05,254 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23242#true} {23521#(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; {23521#(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 05:59:05,255 INFO L272 TraceCheckUtils]: 98: Hoare triple {23521#(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)); {23555#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:59:05,255 INFO L290 TraceCheckUtils]: 99: Hoare triple {23555#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23559#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:05,255 INFO L290 TraceCheckUtils]: 100: Hoare triple {23559#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23243#false} is VALID [2022-04-28 05:59:05,255 INFO L290 TraceCheckUtils]: 101: Hoare triple {23243#false} assume !false; {23243#false} is VALID [2022-04-28 05:59:05,256 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 05:59:05,256 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:03,582 INFO L290 TraceCheckUtils]: 101: Hoare triple {23243#false} assume !false; {23243#false} is VALID [2022-04-28 06:00:03,582 INFO L290 TraceCheckUtils]: 100: Hoare triple {23559#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23243#false} is VALID [2022-04-28 06:00:03,583 INFO L290 TraceCheckUtils]: 99: Hoare triple {23555#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23559#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:03,583 INFO L272 TraceCheckUtils]: 98: Hoare triple {23575#(= 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)); {23555#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:00:03,584 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23242#true} {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:00:03,584 INFO L290 TraceCheckUtils]: 96: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:03,584 INFO L290 TraceCheckUtils]: 95: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:03,584 INFO L290 TraceCheckUtils]: 94: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:03,584 INFO L272 TraceCheckUtils]: 93: Hoare triple {23575#(= 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:00:03,584 INFO L290 TraceCheckUtils]: 92: Hoare triple {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:00:03,585 INFO L290 TraceCheckUtils]: 91: Hoare triple {23575#(= 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; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:00:03,585 INFO L290 TraceCheckUtils]: 90: Hoare triple {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:00:03,585 INFO L290 TraceCheckUtils]: 89: Hoare triple {23575#(= 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; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:00:03,586 INFO L290 TraceCheckUtils]: 88: Hoare triple {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:00:05,588 WARN L290 TraceCheckUtils]: 87: Hoare triple {23609#(= (+ (* 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; {23575#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 06:00:05,589 INFO L290 TraceCheckUtils]: 86: Hoare triple {23609#(= (+ (* 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); {23609#(= (+ (* 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:00:05,589 INFO L290 TraceCheckUtils]: 85: Hoare triple {23609#(= (+ (* 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; {23609#(= (+ (* 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:00:06,398 INFO L290 TraceCheckUtils]: 84: Hoare triple {23619#(= (+ 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; {23609#(= (+ (* 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:00:06,398 INFO L290 TraceCheckUtils]: 83: Hoare triple {23619#(= (+ 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); {23619#(= (+ 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:00:06,399 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23242#true} {23619#(= (+ 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; {23619#(= (+ 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:00:06,399 INFO L290 TraceCheckUtils]: 81: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,399 INFO L290 TraceCheckUtils]: 80: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,399 INFO L290 TraceCheckUtils]: 79: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,399 INFO L272 TraceCheckUtils]: 78: Hoare triple {23619#(= (+ 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:00:06,400 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23242#true} {23619#(= (+ 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; {23619#(= (+ 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:00:06,400 INFO L290 TraceCheckUtils]: 76: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,400 INFO L290 TraceCheckUtils]: 75: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,400 INFO L290 TraceCheckUtils]: 74: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,400 INFO L272 TraceCheckUtils]: 73: Hoare triple {23619#(= (+ 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:00:06,401 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23656#(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; {23619#(= (+ 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:00:06,402 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:00:06,402 INFO L290 TraceCheckUtils]: 70: Hoare triple {23666#(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:00:06,402 INFO L290 TraceCheckUtils]: 69: Hoare triple {23242#true} ~cond := #in~cond; {23666#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:00:06,402 INFO L272 TraceCheckUtils]: 68: Hoare triple {23656#(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:00:06,403 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23673#(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; {23656#(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:00:06,404 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:00:06,404 INFO L290 TraceCheckUtils]: 65: Hoare triple {23666#(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:00:06,404 INFO L290 TraceCheckUtils]: 64: Hoare triple {23242#true} ~cond := #in~cond; {23666#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:00:06,404 INFO L272 TraceCheckUtils]: 63: Hoare triple {23673#(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:00:06,405 INFO L290 TraceCheckUtils]: 62: Hoare triple {23673#(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; {23673#(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:00:06,405 INFO L290 TraceCheckUtils]: 61: Hoare triple {23692#(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; {23673#(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:00:06,406 INFO L290 TraceCheckUtils]: 60: Hoare triple {23692#(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; {23692#(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:00:06,407 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; {23692#(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:00:06,407 INFO L290 TraceCheckUtils]: 58: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:00:06,407 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:00:06,408 INFO L290 TraceCheckUtils]: 56: Hoare triple {23242#true} assume !(~c~0 >= ~b~0); {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 55: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:00:06,408 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:00:06,408 INFO L290 TraceCheckUtils]: 53: Hoare triple {23242#true} assume !(~c~0 >= 2 * ~v~0); {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23242#true} {23242#true} #108#return; {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 51: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 50: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 49: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,408 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:00:06,408 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23242#true} {23242#true} #106#return; {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 46: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 45: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 44: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,408 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:00:06,408 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23242#true} {23242#true} #104#return; {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 41: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 40: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,408 INFO L290 TraceCheckUtils]: 39: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,408 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:00:06,409 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23242#true} {23242#true} #102#return; {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 36: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 35: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,409 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:00:06,409 INFO L290 TraceCheckUtils]: 32: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:00:06,409 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:00:06,409 INFO L290 TraceCheckUtils]: 30: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:00:06,409 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:00:06,409 INFO L290 TraceCheckUtils]: 28: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-28 06:00:06,409 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:00:06,409 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23242#true} {23242#true} #100#return; {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 25: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 24: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 23: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,409 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:00:06,409 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23242#true} {23242#true} #98#return; {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 20: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,409 INFO L290 TraceCheckUtils]: 19: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,410 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:00:06,410 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23242#true} {23242#true} #96#return; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 15: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 14: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L272 TraceCheckUtils]: 12: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:00:06,410 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:00:06,410 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23242#true} {23242#true} #94#return; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 9: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 8: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L272 TraceCheckUtils]: 6: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {23242#true} is VALID [2022-04-28 06:00:06,410 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:00:06,410 INFO L272 TraceCheckUtils]: 4: Hoare triple {23242#true} call #t~ret6 := main(); {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23242#true} {23242#true} #112#return; {23242#true} is VALID [2022-04-28 06:00:06,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-28 06:00:06,410 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:00:06,410 INFO L272 TraceCheckUtils]: 0: Hoare triple {23242#true} call ULTIMATE.init(); {23242#true} is VALID [2022-04-28 06:00:06,411 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:00:06,411 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:06,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1455031253] [2022-04-28 06:00:06,411 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:06,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2010061804] [2022-04-28 06:00:06,411 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2010061804] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:06,411 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:06,411 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 12] total 25 [2022-04-28 06:00:06,412 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:06,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [500574125] [2022-04-28 06:00:06,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [500574125] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:06,412 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:06,412 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 06:00:06,413 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [222856872] [2022-04-28 06:00:06,413 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:06,413 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:06,413 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:06,413 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:06,488 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:00:06,488 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 06:00:06,488 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:06,489 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 06:00:06,489 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=92, Invalid=508, Unknown=0, NotChecked=0, Total=600 [2022-04-28 06:00:06,489 INFO L87 Difference]: Start difference. First operand 395 states and 555 transitions. Second operand has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:12,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:12,058 INFO L93 Difference]: Finished difference Result 470 states and 646 transitions. [2022-04-28 06:00:12,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 06:00:12,059 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:12,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:12,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:12,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-28 06:00:12,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:12,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-28 06:00:12,063 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-04-28 06:00:12,538 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:00:12,549 INFO L225 Difference]: With dead ends: 470 [2022-04-28 06:00:12,549 INFO L226 Difference]: Without dead ends: 468 [2022-04-28 06:00:12,550 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 179 SyntacticMatches, 1 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 155 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=130, Invalid=740, Unknown=0, NotChecked=0, Total=870 [2022-04-28 06:00:12,550 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 61 mSDsluCounter, 375 mSDsCounter, 0 mSdLazyCounter, 984 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 424 SdHoareTripleChecker+Invalid, 1026 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 984 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-28 06:00:12,550 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 424 Invalid, 1026 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 984 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-28 06:00:12,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 468 states. [2022-04-28 06:00:13,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 468 to 407. [2022-04-28 06:00:13,727 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:13,728 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:00:13,728 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:00:13,729 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:00:13,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:13,740 INFO L93 Difference]: Finished difference Result 468 states and 644 transitions. [2022-04-28 06:00:13,740 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 644 transitions. [2022-04-28 06:00:13,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:13,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:13,742 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:00:13,742 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:00:13,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:13,753 INFO L93 Difference]: Finished difference Result 468 states and 644 transitions. [2022-04-28 06:00:13,753 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 644 transitions. [2022-04-28 06:00:13,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:13,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:13,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:13,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:13,755 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:00:13,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 407 states to 407 states and 564 transitions. [2022-04-28 06:00:13,766 INFO L78 Accepts]: Start accepts. Automaton has 407 states and 564 transitions. Word has length 102 [2022-04-28 06:00:13,766 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:13,766 INFO L495 AbstractCegarLoop]: Abstraction has 407 states and 564 transitions. [2022-04-28 06:00:13,767 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 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:00:13,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 407 states and 564 transitions. [2022-04-28 06:00:15,762 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:00:15,762 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 564 transitions. [2022-04-28 06:00:15,763 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 06:00:15,763 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:15,763 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:00:15,781 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:00:15,967 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:00:15,967 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:15,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:15,968 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 5 times [2022-04-28 06:00:15,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:15,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [504742942] [2022-04-28 06:00:15,968 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:15,969 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 6 times [2022-04-28 06:00:15,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:15,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [865829042] [2022-04-28 06:00:15,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:15,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:15,981 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:15,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [304081549] [2022-04-28 06:00:15,982 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:00:15,982 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:15,982 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:15,983 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:00:15,985 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:00:16,130 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 06:00:16,131 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:16,132 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 06:00:16,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:16,151 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:43,078 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:00:51,287 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:00:51,606 INFO L272 TraceCheckUtils]: 0: Hoare triple {26578#true} call ULTIMATE.init(); {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 1: Hoare triple {26578#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); {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 2: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26578#true} {26578#true} #112#return; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L272 TraceCheckUtils]: 4: Hoare triple {26578#true} call #t~ret6 := main(); {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 5: Hoare triple {26578#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; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L272 TraceCheckUtils]: 6: Hoare triple {26578#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 7: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 8: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 9: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26578#true} {26578#true} #94#return; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 11: Hoare triple {26578#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L272 TraceCheckUtils]: 12: Hoare triple {26578#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {26578#true} is VALID [2022-04-28 06:00:51,607 INFO L290 TraceCheckUtils]: 13: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 14: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 15: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26578#true} {26578#true} #96#return; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L272 TraceCheckUtils]: 17: Hoare triple {26578#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 18: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 19: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 20: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26578#true} {26578#true} #98#return; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L272 TraceCheckUtils]: 22: Hoare triple {26578#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 23: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 24: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L290 TraceCheckUtils]: 25: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,608 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26578#true} {26578#true} #100#return; {26578#true} is VALID [2022-04-28 06:00:51,609 INFO L290 TraceCheckUtils]: 27: Hoare triple {26578#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {26664#(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:00:51,609 INFO L290 TraceCheckUtils]: 28: Hoare triple {26664#(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; {26664#(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:00:51,610 INFO L290 TraceCheckUtils]: 29: Hoare triple {26664#(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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,610 INFO L290 TraceCheckUtils]: 30: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,611 INFO L290 TraceCheckUtils]: 31: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,611 INFO L290 TraceCheckUtils]: 32: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,611 INFO L272 TraceCheckUtils]: 33: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,611 INFO L290 TraceCheckUtils]: 34: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,611 INFO L290 TraceCheckUtils]: 35: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,611 INFO L290 TraceCheckUtils]: 36: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,612 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,612 INFO L272 TraceCheckUtils]: 38: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,613 INFO L290 TraceCheckUtils]: 39: Hoare triple {26578#true} ~cond := #in~cond; {26702#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:51,614 INFO L290 TraceCheckUtils]: 40: Hoare triple {26702#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:51,614 INFO L290 TraceCheckUtils]: 41: Hoare triple {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:51,615 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,615 INFO L272 TraceCheckUtils]: 43: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,615 INFO L290 TraceCheckUtils]: 44: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,615 INFO L290 TraceCheckUtils]: 45: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,615 INFO L290 TraceCheckUtils]: 46: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,616 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,616 INFO L272 TraceCheckUtils]: 48: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,616 INFO L290 TraceCheckUtils]: 49: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,616 INFO L290 TraceCheckUtils]: 50: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,616 INFO L290 TraceCheckUtils]: 51: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,617 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,618 INFO L290 TraceCheckUtils]: 53: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,618 INFO L290 TraceCheckUtils]: 54: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,618 INFO L272 TraceCheckUtils]: 55: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,618 INFO L290 TraceCheckUtils]: 56: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,618 INFO L290 TraceCheckUtils]: 57: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,618 INFO L290 TraceCheckUtils]: 58: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,619 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,619 INFO L272 TraceCheckUtils]: 60: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,619 INFO L290 TraceCheckUtils]: 61: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,619 INFO L290 TraceCheckUtils]: 62: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,619 INFO L290 TraceCheckUtils]: 63: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,620 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,620 INFO L272 TraceCheckUtils]: 65: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,620 INFO L290 TraceCheckUtils]: 66: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,620 INFO L290 TraceCheckUtils]: 67: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,620 INFO L290 TraceCheckUtils]: 68: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,621 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,621 INFO L272 TraceCheckUtils]: 70: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,621 INFO L290 TraceCheckUtils]: 71: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,621 INFO L290 TraceCheckUtils]: 72: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,621 INFO L290 TraceCheckUtils]: 73: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,621 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,622 INFO L290 TraceCheckUtils]: 75: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,622 INFO L290 TraceCheckUtils]: 76: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,622 INFO L272 TraceCheckUtils]: 77: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,622 INFO L290 TraceCheckUtils]: 78: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,622 INFO L290 TraceCheckUtils]: 79: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,622 INFO L290 TraceCheckUtils]: 80: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,623 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,623 INFO L272 TraceCheckUtils]: 82: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,623 INFO L290 TraceCheckUtils]: 83: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,623 INFO L290 TraceCheckUtils]: 84: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,623 INFO L290 TraceCheckUtils]: 85: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,624 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,624 INFO L272 TraceCheckUtils]: 87: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,624 INFO L290 TraceCheckUtils]: 88: Hoare triple {26578#true} ~cond := #in~cond; {26578#true} is VALID [2022-04-28 06:00:51,624 INFO L290 TraceCheckUtils]: 89: Hoare triple {26578#true} assume !(0 == ~cond); {26578#true} is VALID [2022-04-28 06:00:51,624 INFO L290 TraceCheckUtils]: 90: Hoare triple {26578#true} assume true; {26578#true} is VALID [2022-04-28 06:00:51,625 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26578#true} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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:00:51,625 INFO L272 TraceCheckUtils]: 92: Hoare triple {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {26578#true} is VALID [2022-04-28 06:00:51,625 INFO L290 TraceCheckUtils]: 93: Hoare triple {26578#true} ~cond := #in~cond; {26702#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:51,625 INFO L290 TraceCheckUtils]: 94: Hoare triple {26702#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:51,626 INFO L290 TraceCheckUtils]: 95: Hoare triple {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:51,627 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {26706#(not (= |__VERIFIER_assert_#in~cond| 0))} {26671#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {26875#(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:00:51,627 INFO L290 TraceCheckUtils]: 97: Hoare triple {26875#(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); {26879#(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:00:51,630 INFO L290 TraceCheckUtils]: 98: Hoare triple {26879#(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; {26883#(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:00:51,631 INFO L290 TraceCheckUtils]: 99: Hoare triple {26883#(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; {26883#(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:00:51,631 INFO L290 TraceCheckUtils]: 100: Hoare triple {26883#(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); {26883#(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:00:51,633 INFO L290 TraceCheckUtils]: 101: Hoare triple {26883#(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; {26893#(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:00:51,634 INFO L290 TraceCheckUtils]: 102: Hoare triple {26893#(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; {26893#(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:00:51,634 INFO L290 TraceCheckUtils]: 103: Hoare triple {26893#(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); {26900#(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:00:51,637 INFO L272 TraceCheckUtils]: 104: Hoare triple {26900#(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)); {26904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:00:51,637 INFO L290 TraceCheckUtils]: 105: Hoare triple {26904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:51,638 INFO L290 TraceCheckUtils]: 106: Hoare triple {26908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26579#false} is VALID [2022-04-28 06:00:51,638 INFO L290 TraceCheckUtils]: 107: Hoare triple {26579#false} assume !false; {26579#false} is VALID [2022-04-28 06:00:51,638 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:00:51,638 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:08,166 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful