/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/egcd3-ll.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 04:23:08,880 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 04:23:08,881 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 04:23:08,925 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 04:23:08,925 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 04:23:08,926 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 04:23:08,929 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 04:23:08,931 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 04:23:08,935 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 04:23:08,939 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 04:23:08,940 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 04:23:08,941 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 04:23:08,941 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 04:23:08,943 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 04:23:08,944 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 04:23:08,946 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 04:23:08,947 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 04:23:08,948 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 04:23:08,950 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 04:23:08,955 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 04:23:08,956 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 04:23:08,957 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 04:23:08,958 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 04:23:08,959 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 04:23:08,960 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 04:23:08,965 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 04:23:08,966 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 04:23:08,966 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 04:23:08,967 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 04:23:08,967 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 04:23:08,968 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 04:23:08,969 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 04:23:08,970 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 04:23:08,970 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 04:23:08,971 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 04:23:08,972 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 04:23:08,972 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 04:23:08,972 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 04:23:08,973 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 04:23:08,973 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 04:23:08,973 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 04:23:08,975 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 04:23:08,975 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 04:23:08,986 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 04:23:08,987 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 04:23:08,988 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 04:23:08,988 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 04:23:08,988 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 04:23:08,988 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 04:23:08,988 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 04:23:08,988 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 04:23:08,989 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 04:23:08,989 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 04:23:08,990 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 04:23:08,990 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 04:23:08,990 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 04:23:08,990 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 04:23:08,990 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 04:23:08,990 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 04:23:08,990 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 04:23:08,991 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 04:23:08,991 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 04:23:08,991 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 04:23:08,991 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 04:23:08,991 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 04:23:08,991 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 04:23:08,992 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 04:23:08,992 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 04:23:08,992 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-08 04:23:09,221 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 04:23:09,243 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 04:23:09,245 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 04:23:09,246 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 04:23:09,247 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 04:23:09,248 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-08 04:23:09,308 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c3af00ee6/45d3b10450a54b9bbb2f8e37c4460bf5/FLAGc86951fe8 [2022-04-08 04:23:09,656 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 04:23:09,657 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-08 04:23:09,666 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c3af00ee6/45d3b10450a54b9bbb2f8e37c4460bf5/FLAGc86951fe8 [2022-04-08 04:23:10,076 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c3af00ee6/45d3b10450a54b9bbb2f8e37c4460bf5 [2022-04-08 04:23:10,078 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 04:23:10,079 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 04:23:10,081 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 04:23:10,081 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 04:23:10,085 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 04:23:10,086 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,087 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3bed75bc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10, skipping insertion in model container [2022-04-08 04:23:10,087 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,095 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 04:23:10,110 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 04:23:10,314 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/egcd3-ll.c[490,503] [2022-04-08 04:23:10,351 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 04:23:10,364 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 04:23:10,377 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/egcd3-ll.c[490,503] [2022-04-08 04:23:10,406 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 04:23:10,417 INFO L208 MainTranslator]: Completed translation [2022-04-08 04:23:10,417 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10 WrapperNode [2022-04-08 04:23:10,417 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 04:23:10,418 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 04:23:10,418 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 04:23:10,418 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 04:23:10,431 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,432 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,440 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,440 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,457 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,461 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,462 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,463 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 04:23:10,464 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 04:23:10,464 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 04:23:10,465 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 04:23:10,467 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (1/1) ... [2022-04-08 04:23:10,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 04:23:10,482 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:23:10,497 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-08 04:23:10,511 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-08 04:23:10,546 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 04:23:10,546 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 04:23:10,546 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 04:23:10,546 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 04:23:10,546 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 04:23:10,546 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 04:23:10,547 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 04:23:10,547 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 04:23:10,547 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 04:23:10,548 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 04:23:10,548 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 04:23:10,548 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 04:23:10,549 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 04:23:10,549 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 04:23:10,549 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 04:23:10,550 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 04:23:10,550 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 04:23:10,550 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 04:23:10,550 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 04:23:10,550 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 04:23:10,605 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 04:23:10,607 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 04:23:10,833 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 04:23:10,839 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 04:23:10,839 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-08 04:23:10,841 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 04:23:10 BoogieIcfgContainer [2022-04-08 04:23:10,841 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 04:23:10,842 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 04:23:10,842 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 04:23:10,854 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 04:23:10,855 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 04:23:10" (1/3) ... [2022-04-08 04:23:10,856 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1dea3d4c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 04:23:10, skipping insertion in model container [2022-04-08 04:23:10,856 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 04:23:10" (2/3) ... [2022-04-08 04:23:10,856 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1dea3d4c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 04:23:10, skipping insertion in model container [2022-04-08 04:23:10,856 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 04:23:10" (3/3) ... [2022-04-08 04:23:10,857 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll.c [2022-04-08 04:23:10,862 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 04:23:10,862 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 04:23:10,943 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 04:23:10,948 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 04:23:10,949 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 04:23:10,970 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 04:23:10,977 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-08 04:23:10,977 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:23:10,978 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:23:10,979 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:23:10,986 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:23:10,987 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 1 times [2022-04-08 04:23:10,993 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:10,994 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [70802650] [2022-04-08 04:23:11,005 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:23:11,006 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 2 times [2022-04-08 04:23:11,008 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:23:11,009 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1305748803] [2022-04-08 04:23:11,009 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:23:11,010 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:23:11,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:11,188 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 04:23:11,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:11,208 INFO L290 TraceCheckUtils]: 0: Hoare triple {53#(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); {40#true} is VALID [2022-04-08 04:23:11,210 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 04:23:11,210 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-08 04:23:11,211 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 04:23:11,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:11,232 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 04:23:11,233 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 04:23:11,233 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 04:23:11,233 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-08 04:23:11,234 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-08 04:23:11,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:11,247 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 04:23:11,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 04:23:11,248 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 04:23:11,248 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-08 04:23:11,250 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {53#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 04:23:11,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {53#(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); {40#true} is VALID [2022-04-08 04:23:11,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 04:23:11,250 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-08 04:23:11,251 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-08 04:23:11,251 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {40#true} is VALID [2022-04-08 04:23:11,251 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-08 04:23:11,251 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 04:23:11,252 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 04:23:11,252 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 04:23:11,252 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-08 04:23:11,253 INFO L272 TraceCheckUtils]: 11: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-08 04:23:11,253 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 04:23:11,253 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 04:23:11,254 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 04:23:11,254 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-08 04:23:11,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-08 04:23:11,254 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-08 04:23:11,255 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#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)); {41#false} is VALID [2022-04-08 04:23:11,255 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-08 04:23:11,255 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-08 04:23:11,255 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-08 04:23:11,256 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 04:23:11,256 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:23:11,257 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1305748803] [2022-04-08 04:23:11,257 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1305748803] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:11,257 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:11,258 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 04:23:11,260 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:23:11,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [70802650] [2022-04-08 04:23:11,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [70802650] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:11,261 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:11,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 04:23:11,261 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1456866173] [2022-04-08 04:23:11,262 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:23:11,266 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-08 04:23:11,267 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:23:11,270 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:11,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:11,303 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 04:23:11,303 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:11,319 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 04:23:11,319 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 04:23:11,322 INFO L87 Difference]: Start difference. First operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:11,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:11,489 INFO L93 Difference]: Finished difference Result 67 states and 103 transitions. [2022-04-08 04:23:11,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 04:23:11,489 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-08 04:23:11,490 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:23:11,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:11,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-08 04:23:11,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:11,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-08 04:23:11,506 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 103 transitions. [2022-04-08 04:23:11,633 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:11,643 INFO L225 Difference]: With dead ends: 67 [2022-04-08 04:23:11,643 INFO L226 Difference]: Without dead ends: 32 [2022-04-08 04:23:11,646 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 04:23:11,649 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 23 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 17 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 04:23:11,652 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 17 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 04:23:11,662 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-08 04:23:11,674 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-08 04:23:11,675 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:23:11,676 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 04:23:11,676 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 04:23:11,677 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 04:23:11,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:11,681 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-08 04:23:11,682 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-08 04:23:11,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:11,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:11,683 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 32 states. [2022-04-08 04:23:11,683 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 32 states. [2022-04-08 04:23:11,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:11,688 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-08 04:23:11,697 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-08 04:23:11,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:11,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:11,698 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:23:11,698 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:23:11,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 04:23:11,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 39 transitions. [2022-04-08 04:23:11,704 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 39 transitions. Word has length 22 [2022-04-08 04:23:11,704 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:23:11,704 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 39 transitions. [2022-04-08 04:23:11,705 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:11,705 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 39 transitions. [2022-04-08 04:23:11,749 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:11,749 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-08 04:23:11,750 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 04:23:11,750 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:23:11,750 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:23:11,751 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 04:23:11,751 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:23:11,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:23:11,752 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 1 times [2022-04-08 04:23:11,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:11,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2066090810] [2022-04-08 04:23:11,753 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:23:11,753 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 2 times [2022-04-08 04:23:11,753 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:23:11,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1247311117] [2022-04-08 04:23:11,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:23:11,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:23:11,772 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:23:11,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [45018547] [2022-04-08 04:23:11,773 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:23:11,774 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:11,774 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:23:11,779 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-08 04:23:11,805 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-08 04:23:11,832 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 04:23:11,832 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:23:11,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 04:23:11,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:11,860 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:23:12,137 INFO L272 TraceCheckUtils]: 0: Hoare triple {318#true} call ULTIMATE.init(); {318#true} is VALID [2022-04-08 04:23:12,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {318#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); {318#true} is VALID [2022-04-08 04:23:12,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-08 04:23:12,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {318#true} {318#true} #105#return; {318#true} is VALID [2022-04-08 04:23:12,138 INFO L272 TraceCheckUtils]: 4: Hoare triple {318#true} call #t~ret6 := main(); {318#true} is VALID [2022-04-08 04:23:12,138 INFO L290 TraceCheckUtils]: 5: Hoare triple {318#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {318#true} is VALID [2022-04-08 04:23:12,138 INFO L272 TraceCheckUtils]: 6: Hoare triple {318#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-08 04:23:12,139 INFO L290 TraceCheckUtils]: 7: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-08 04:23:12,139 INFO L290 TraceCheckUtils]: 8: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-08 04:23:12,139 INFO L290 TraceCheckUtils]: 9: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-08 04:23:12,139 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {318#true} {318#true} #91#return; {318#true} is VALID [2022-04-08 04:23:12,139 INFO L272 TraceCheckUtils]: 11: Hoare triple {318#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-08 04:23:12,140 INFO L290 TraceCheckUtils]: 12: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-08 04:23:12,140 INFO L290 TraceCheckUtils]: 13: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-08 04:23:12,140 INFO L290 TraceCheckUtils]: 14: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-08 04:23:12,140 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {318#true} {318#true} #93#return; {318#true} is VALID [2022-04-08 04:23:12,141 INFO L290 TraceCheckUtils]: 16: Hoare triple {318#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {371#(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-08 04:23:12,142 INFO L290 TraceCheckUtils]: 17: Hoare triple {371#(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; {371#(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-08 04:23:12,143 INFO L290 TraceCheckUtils]: 18: Hoare triple {371#(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); {378#(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-08 04:23:12,144 INFO L272 TraceCheckUtils]: 19: Hoare triple {378#(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)); {382#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:23:12,144 INFO L290 TraceCheckUtils]: 20: Hoare triple {382#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {386#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:23:12,145 INFO L290 TraceCheckUtils]: 21: Hoare triple {386#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {319#false} is VALID [2022-04-08 04:23:12,145 INFO L290 TraceCheckUtils]: 22: Hoare triple {319#false} assume !false; {319#false} is VALID [2022-04-08 04:23:12,145 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 04:23:12,146 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 04:23:12,146 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:23:12,146 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1247311117] [2022-04-08 04:23:12,146 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:23:12,146 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [45018547] [2022-04-08 04:23:12,147 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [45018547] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:12,147 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:12,147 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 04:23:12,148 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:23:12,148 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2066090810] [2022-04-08 04:23:12,148 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2066090810] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:12,148 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:12,148 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 04:23:12,148 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1992637622] [2022-04-08 04:23:12,149 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:23:12,149 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-08 04:23:12,150 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:23:12,150 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:23:12,167 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:12,167 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 04:23:12,167 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:12,168 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 04:23:12,168 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 04:23:12,168 INFO L87 Difference]: Start difference. First operand 32 states and 39 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:23:12,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:12,533 INFO L93 Difference]: Finished difference Result 51 states and 64 transitions. [2022-04-08 04:23:12,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 04:23:12,534 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-08 04:23:12,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:23:12,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:23:12,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-08 04:23:12,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:23:12,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-08 04:23:12,552 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-08 04:23:12,614 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:12,618 INFO L225 Difference]: With dead ends: 51 [2022-04-08 04:23:12,618 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 04:23:12,620 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 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-08 04:23:12,622 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 14 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 04:23:12,626 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 154 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 04:23:12,628 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 04:23:12,648 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 47. [2022-04-08 04:23:12,648 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:23:12,650 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 04:23:12,651 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 04:23:12,652 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 04:23:12,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:12,661 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-08 04:23:12,661 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-08 04:23:12,662 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:12,662 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:12,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 48 states. [2022-04-08 04:23:12,663 INFO L87 Difference]: Start difference. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 48 states. [2022-04-08 04:23:12,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:12,666 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-08 04:23:12,666 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-08 04:23:12,667 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:12,667 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:12,667 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:23:12,667 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:23:12,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 04:23:12,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 59 transitions. [2022-04-08 04:23:12,671 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 59 transitions. Word has length 23 [2022-04-08 04:23:12,671 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:23:12,671 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 59 transitions. [2022-04-08 04:23:12,671 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:23:12,671 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 59 transitions. [2022-04-08 04:23:12,748 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-08 04:23:12,748 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 59 transitions. [2022-04-08 04:23:12,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 04:23:12,749 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:23:12,749 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:23:12,775 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-08 04:23:12,972 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:12,973 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:23:12,974 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:23:12,974 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 1 times [2022-04-08 04:23:12,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:12,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2094718686] [2022-04-08 04:23:12,975 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:23:12,975 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 2 times [2022-04-08 04:23:12,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:23:12,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1968209266] [2022-04-08 04:23:12,975 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:23:12,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:23:13,000 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:23:13,000 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1435200334] [2022-04-08 04:23:13,000 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:23:13,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:13,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:23:13,005 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-08 04:23:13,006 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-08 04:23:13,049 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:23:13,049 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:23:13,050 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 04:23:13,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:13,062 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:23:13,253 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-08 04:23:13,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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); {688#true} is VALID [2022-04-08 04:23:13,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-08 04:23:13,254 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-08 04:23:13,254 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-08 04:23:13,255 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {688#true} is VALID [2022-04-08 04:23:13,255 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-08 04:23:13,256 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:23:13,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:13,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:13,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-08 04:23:13,258 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-08 04:23:13,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-08 04:23:13,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-08 04:23:13,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-08 04:23:13,260 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-08 04:23:13,260 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-08 04:23:13,261 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-08 04:23:13,261 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-08 04:23:13,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-08 04:23:13,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-08 04:23:13,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 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; {761#(<= 1 main_~b~0)} is VALID [2022-04-08 04:23:13,263 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-08 04:23:13,264 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-08 04:23:13,264 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#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)); {689#false} is VALID [2022-04-08 04:23:13,264 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-08 04:23:13,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-08 04:23:13,265 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-08 04:23:13,265 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 04:23:13,265 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:23:13,505 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-08 04:23:13,506 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-08 04:23:13,507 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-08 04:23:13,507 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#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)); {689#false} is VALID [2022-04-08 04:23:13,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-08 04:23:13,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-08 04:23:13,509 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 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; {761#(<= 1 main_~b~0)} is VALID [2022-04-08 04:23:13,509 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-08 04:23:13,510 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-08 04:23:13,510 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-08 04:23:13,511 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-08 04:23:13,511 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-08 04:23:13,513 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-08 04:23:13,513 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-08 04:23:13,514 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-08 04:23:13,514 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-08 04:23:13,514 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-08 04:23:13,515 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-08 04:23:13,515 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:13,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:13,518 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 04:23:13,518 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-08 04:23:13,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {688#true} is VALID [2022-04-08 04:23:13,519 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-08 04:23:13,519 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-08 04:23:13,519 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-08 04:23:13,519 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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); {688#true} is VALID [2022-04-08 04:23:13,519 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-08 04:23:13,519 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 04:23:13,519 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:23:13,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1968209266] [2022-04-08 04:23:13,520 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:23:13,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1435200334] [2022-04-08 04:23:13,520 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1435200334] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:23:13,520 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:23:13,520 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 04:23:13,520 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:23:13,521 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2094718686] [2022-04-08 04:23:13,521 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2094718686] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:13,521 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:13,521 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 04:23:13,521 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1431764641] [2022-04-08 04:23:13,521 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:23:13,522 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-08 04:23:13,522 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:23:13,522 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:13,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:13,542 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 04:23:13,542 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:13,542 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 04:23:13,542 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 04:23:13,543 INFO L87 Difference]: Start difference. First operand 47 states and 59 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:14,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:14,253 INFO L93 Difference]: Finished difference Result 100 states and 138 transitions. [2022-04-08 04:23:14,253 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 04:23:14,260 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-08 04:23:14,260 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:23:14,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:14,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-08 04:23:14,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:14,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-08 04:23:14,270 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 103 transitions. [2022-04-08 04:23:14,374 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:14,379 INFO L225 Difference]: With dead ends: 100 [2022-04-08 04:23:14,379 INFO L226 Difference]: Without dead ends: 93 [2022-04-08 04:23:14,379 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 47 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-08 04:23:14,380 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 71 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 04:23:14,381 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [75 Valid, 216 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 04:23:14,381 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-08 04:23:14,471 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 68. [2022-04-08 04:23:14,472 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:23:14,472 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 04:23:14,473 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 04:23:14,473 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 04:23:14,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:14,479 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-08 04:23:14,479 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-08 04:23:14,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:14,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:14,481 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 93 states. [2022-04-08 04:23:14,481 INFO L87 Difference]: Start difference. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 93 states. [2022-04-08 04:23:14,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:14,487 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-08 04:23:14,487 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-08 04:23:14,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:14,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:14,488 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:23:14,489 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:23:14,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 04:23:14,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 90 transitions. [2022-04-08 04:23:14,492 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 90 transitions. Word has length 28 [2022-04-08 04:23:14,493 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:23:14,493 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 90 transitions. [2022-04-08 04:23:14,493 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:14,493 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 90 transitions. [2022-04-08 04:23:14,596 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:14,596 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 90 transitions. [2022-04-08 04:23:14,597 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-08 04:23:14,597 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:23:14,597 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:23:14,624 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-08 04:23:14,811 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 04:23:14,812 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:23:14,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:23:14,812 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 1 times [2022-04-08 04:23:14,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:14,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1342130751] [2022-04-08 04:23:14,813 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:23:14,813 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 2 times [2022-04-08 04:23:14,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:23:14,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1107671293] [2022-04-08 04:23:14,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:23:14,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:23:14,833 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:23:14,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [678417716] [2022-04-08 04:23:14,833 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:23:14,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:14,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:23:14,835 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-08 04:23:14,836 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-08 04:23:14,878 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:23:14,879 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:23:14,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-08 04:23:14,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:14,899 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:23:15,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-08 04:23:15,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#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); {1396#true} is VALID [2022-04-08 04:23:15,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-08 04:23:15,303 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-08 04:23:15,303 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-08 04:23:15,304 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1396#true} is VALID [2022-04-08 04:23:15,304 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-08 04:23:15,305 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:23:15,307 INFO L290 TraceCheckUtils]: 8: Hoare triple {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:15,308 INFO L290 TraceCheckUtils]: 9: Hoare triple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:15,315 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} {1396#true} #91#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-08 04:23:15,315 INFO L272 TraceCheckUtils]: 11: Hoare triple {1433#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-08 04:23:15,315 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-08 04:23:15,316 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-08 04:23:15,316 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-08 04:23:15,320 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1433#(<= 1 main_~x~0)} #93#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-08 04:23:15,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {1433#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 04:23:15,321 INFO L290 TraceCheckUtils]: 17: Hoare triple {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 04:23:15,321 INFO L290 TraceCheckUtils]: 18: Hoare triple {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1459#(and (<= 1 main_~x~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-08 04:23:15,322 INFO L290 TraceCheckUtils]: 19: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {1459#(and (<= 1 main_~x~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-08 04:23:15,322 INFO L290 TraceCheckUtils]: 20: Hoare triple {1459#(and (<= 1 main_~x~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); {1459#(and (<= 1 main_~x~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-08 04:23:15,323 INFO L290 TraceCheckUtils]: 21: Hoare triple {1459#(and (<= 1 main_~x~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; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-08 04:23:15,324 INFO L290 TraceCheckUtils]: 22: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-08 04:23:15,324 INFO L290 TraceCheckUtils]: 23: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-08 04:23:15,325 INFO L290 TraceCheckUtils]: 24: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-08 04:23:15,325 INFO L290 TraceCheckUtils]: 25: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-08 04:23:15,326 INFO L290 TraceCheckUtils]: 26: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-08 04:23:15,326 INFO L272 TraceCheckUtils]: 27: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:23:15,327 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:23:15,327 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-08 04:23:15,327 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-08 04:23:15,328 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 04:23:15,328 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:23:15,540 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-08 04:23:15,541 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-08 04:23:15,541 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:23:15,542 INFO L272 TraceCheckUtils]: 27: Hoare triple {1508#(= 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)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:23:15,543 INFO L290 TraceCheckUtils]: 26: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:23:15,543 INFO L290 TraceCheckUtils]: 25: Hoare triple {1508#(= 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; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:23:15,544 INFO L290 TraceCheckUtils]: 24: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:23:15,544 INFO L290 TraceCheckUtils]: 23: Hoare triple {1508#(= 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; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:23:15,544 INFO L290 TraceCheckUtils]: 22: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:23:15,545 INFO L290 TraceCheckUtils]: 21: Hoare triple {1527#(= 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; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:23:15,545 INFO L290 TraceCheckUtils]: 20: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:23:15,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:23:15,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {1527#(= 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; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:23:15,547 INFO L290 TraceCheckUtils]: 17: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:23:15,547 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:23:15,547 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1396#true} #93#return; {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L272 TraceCheckUtils]: 11: Hoare triple {1396#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1396#true} {1396#true} #91#return; {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L290 TraceCheckUtils]: 9: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L290 TraceCheckUtils]: 8: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-08 04:23:15,548 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-08 04:23:15,549 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-08 04:23:15,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1396#true} is VALID [2022-04-08 04:23:15,549 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-08 04:23:15,549 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-08 04:23:15,549 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-08 04:23:15,549 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#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); {1396#true} is VALID [2022-04-08 04:23:15,550 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-08 04:23:15,550 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 04:23:15,550 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:23:15,550 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1107671293] [2022-04-08 04:23:15,550 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:23:15,550 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [678417716] [2022-04-08 04:23:15,551 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [678417716] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:23:15,551 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:23:15,551 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 6] total 12 [2022-04-08 04:23:15,551 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:23:15,551 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1342130751] [2022-04-08 04:23:15,551 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1342130751] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:15,551 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:15,551 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 04:23:15,552 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2101372057] [2022-04-08 04:23:15,552 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:23:15,552 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-08 04:23:15,552 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:23:15,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:15,576 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:15,576 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 04:23:15,576 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:15,576 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 04:23:15,577 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-08 04:23:15,577 INFO L87 Difference]: Start difference. First operand 68 states and 90 transitions. Second operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:16,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:16,442 INFO L93 Difference]: Finished difference Result 115 states and 154 transitions. [2022-04-08 04:23:16,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 04:23:16,442 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-08 04:23:16,444 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:23:16,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:16,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-08 04:23:16,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:16,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-08 04:23:16,452 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 98 transitions. [2022-04-08 04:23:16,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:16,544 INFO L225 Difference]: With dead ends: 115 [2022-04-08 04:23:16,544 INFO L226 Difference]: Without dead ends: 113 [2022-04-08 04:23:16,545 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 50 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-04-08 04:23:16,545 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 60 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 234 SdHoareTripleChecker+Invalid, 231 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 04:23:16,545 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 234 Invalid, 231 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 04:23:16,546 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-08 04:23:16,674 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 102. [2022-04-08 04:23:16,674 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:23:16,674 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:23:16,675 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:23:16,675 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:23:16,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:16,681 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-08 04:23:16,681 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-08 04:23:16,681 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:16,681 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:16,682 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-08 04:23:16,683 INFO L87 Difference]: Start difference. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-08 04:23:16,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:16,688 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-08 04:23:16,688 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-08 04:23:16,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:16,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:16,689 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:23:16,689 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:23:16,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:23:16,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 136 transitions. [2022-04-08 04:23:16,694 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 136 transitions. Word has length 31 [2022-04-08 04:23:16,694 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:23:16,694 INFO L478 AbstractCegarLoop]: Abstraction has 102 states and 136 transitions. [2022-04-08 04:23:16,695 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 04:23:16,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 102 states and 136 transitions. [2022-04-08 04:23:16,863 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:16,863 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 136 transitions. [2022-04-08 04:23:16,863 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-08 04:23:16,864 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:23:16,864 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:23:16,880 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-08 04:23:17,064 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:17,065 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:23:17,065 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:23:17,065 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 1 times [2022-04-08 04:23:17,065 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:17,066 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1701952494] [2022-04-08 04:23:17,066 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:23:17,066 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 2 times [2022-04-08 04:23:17,066 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:23:17,066 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1900546308] [2022-04-08 04:23:17,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:23:17,067 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:23:17,098 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:23:17,098 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1351837946] [2022-04-08 04:23:17,098 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:23:17,099 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:17,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:23:17,103 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-08 04:23:17,124 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-08 04:23:17,146 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:23:17,146 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:23:17,147 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 04:23:17,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:17,162 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:23:17,395 INFO L272 TraceCheckUtils]: 0: Hoare triple {2259#true} call ULTIMATE.init(); {2259#true} is VALID [2022-04-08 04:23:17,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {2259#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); {2259#true} is VALID [2022-04-08 04:23:17,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-08 04:23:17,396 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2259#true} {2259#true} #105#return; {2259#true} is VALID [2022-04-08 04:23:17,396 INFO L272 TraceCheckUtils]: 4: Hoare triple {2259#true} call #t~ret6 := main(); {2259#true} is VALID [2022-04-08 04:23:17,396 INFO L290 TraceCheckUtils]: 5: Hoare triple {2259#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2259#true} is VALID [2022-04-08 04:23:17,396 INFO L272 TraceCheckUtils]: 6: Hoare triple {2259#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-08 04:23:17,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-08 04:23:17,396 INFO L290 TraceCheckUtils]: 8: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-08 04:23:17,397 INFO L290 TraceCheckUtils]: 9: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-08 04:23:17,397 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2259#true} {2259#true} #91#return; {2259#true} is VALID [2022-04-08 04:23:17,397 INFO L272 TraceCheckUtils]: 11: Hoare triple {2259#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-08 04:23:17,397 INFO L290 TraceCheckUtils]: 12: Hoare triple {2259#true} ~cond := #in~cond; {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:23:17,398 INFO L290 TraceCheckUtils]: 13: Hoare triple {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:17,404 INFO L290 TraceCheckUtils]: 14: Hoare triple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:17,404 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} {2259#true} #93#return; {2311#(<= 1 main_~y~0)} is VALID [2022-04-08 04:23:17,405 INFO L290 TraceCheckUtils]: 16: Hoare triple {2311#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2315#(<= 1 main_~b~0)} is VALID [2022-04-08 04:23:17,405 INFO L290 TraceCheckUtils]: 17: Hoare triple {2315#(<= 1 main_~b~0)} assume !false; {2315#(<= 1 main_~b~0)} is VALID [2022-04-08 04:23:17,406 INFO L290 TraceCheckUtils]: 18: Hoare triple {2315#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:23:17,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:23:17,407 INFO L290 TraceCheckUtils]: 20: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:23:17,407 INFO L290 TraceCheckUtils]: 21: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:23:17,408 INFO L272 TraceCheckUtils]: 22: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2259#true} is VALID [2022-04-08 04:23:17,408 INFO L290 TraceCheckUtils]: 23: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-08 04:23:17,408 INFO L290 TraceCheckUtils]: 24: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-08 04:23:17,412 INFO L290 TraceCheckUtils]: 25: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-08 04:23:17,413 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:23:17,413 INFO L272 TraceCheckUtils]: 27: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2259#true} is VALID [2022-04-08 04:23:17,414 INFO L290 TraceCheckUtils]: 28: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-08 04:23:17,414 INFO L290 TraceCheckUtils]: 29: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-08 04:23:17,414 INFO L290 TraceCheckUtils]: 30: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-08 04:23:17,415 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:23:17,415 INFO L272 TraceCheckUtils]: 32: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:23:17,416 INFO L290 TraceCheckUtils]: 33: Hoare triple {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2369#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:23:17,416 INFO L290 TraceCheckUtils]: 34: Hoare triple {2369#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2260#false} is VALID [2022-04-08 04:23:17,416 INFO L290 TraceCheckUtils]: 35: Hoare triple {2260#false} assume !false; {2260#false} is VALID [2022-04-08 04:23:17,417 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-08 04:23:17,417 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 04:23:17,417 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:23:17,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1900546308] [2022-04-08 04:23:17,419 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:23:17,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1351837946] [2022-04-08 04:23:17,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1351837946] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:17,420 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:17,420 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 04:23:17,421 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:23:17,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1701952494] [2022-04-08 04:23:17,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1701952494] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:23:17,421 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:23:17,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 04:23:17,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1156762526] [2022-04-08 04:23:17,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:23:17,422 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-08 04:23:17,423 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:23:17,423 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:23:17,446 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-08 04:23:17,446 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 04:23:17,447 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:17,447 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 04:23:17,447 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-08 04:23:17,447 INFO L87 Difference]: Start difference. First operand 102 states and 136 transitions. Second operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:23:18,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:18,083 INFO L93 Difference]: Finished difference Result 115 states and 153 transitions. [2022-04-08 04:23:18,083 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 04:23:18,083 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-08 04:23:18,083 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:23:18,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:23:18,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-08 04:23:18,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:23:18,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-08 04:23:18,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 78 transitions. [2022-04-08 04:23:18,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:18,157 INFO L225 Difference]: With dead ends: 115 [2022-04-08 04:23:18,157 INFO L226 Difference]: Without dead ends: 113 [2022-04-08 04:23:18,158 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-08 04:23:18,159 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 41 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 04:23:18,159 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 209 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 04:23:18,159 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-08 04:23:18,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 112. [2022-04-08 04:23:18,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:23:18,371 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:23:18,373 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:23:18,374 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:23:18,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:18,378 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-08 04:23:18,378 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-08 04:23:18,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:18,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:18,382 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-08 04:23:18,382 INFO L87 Difference]: Start difference. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-08 04:23:18,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:23:18,387 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-08 04:23:18,387 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-08 04:23:18,390 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:23:18,390 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:23:18,390 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:23:18,390 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:23:18,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:23:18,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 150 transitions. [2022-04-08 04:23:18,396 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 150 transitions. Word has length 36 [2022-04-08 04:23:18,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:23:18,396 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 150 transitions. [2022-04-08 04:23:18,396 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:23:18,396 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 150 transitions. [2022-04-08 04:23:18,575 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:23:18,575 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 150 transitions. [2022-04-08 04:23:18,575 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-08 04:23:18,575 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:23:18,576 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:23:18,592 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-08 04:23:18,779 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:18,779 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:23:18,780 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:23:18,780 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 1 times [2022-04-08 04:23:18,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:23:18,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [164537779] [2022-04-08 04:23:18,780 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:23:18,780 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 2 times [2022-04-08 04:23:18,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:23:18,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [980570296] [2022-04-08 04:23:18,781 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:23:18,781 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:23:18,794 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:23:18,794 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [714586876] [2022-04-08 04:23:18,794 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:23:18,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:23:18,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:23:18,796 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-08 04:23:18,801 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-08 04:23:18,834 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:23:18,834 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:23:18,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 04:23:18,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:23:18,844 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:23:25,285 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#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); {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-08 04:23:25,286 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:23:25,287 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-08 04:23:25,287 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-08 04:23:25,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:23:25,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:25,288 INFO L290 TraceCheckUtils]: 14: Hoare triple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:23:25,288 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} {3063#true} #93#return; {3115#(<= 1 main_~y~0)} is VALID [2022-04-08 04:23:25,289 INFO L290 TraceCheckUtils]: 16: Hoare triple {3115#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:23:25,289 INFO L290 TraceCheckUtils]: 17: Hoare triple {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:23:25,290 INFO L290 TraceCheckUtils]: 18: Hoare triple {3119#(and (= main_~r~0 0) (= 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; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:23:25,290 INFO L290 TraceCheckUtils]: 19: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:23:25,291 INFO L290 TraceCheckUtils]: 20: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:23:25,291 INFO L290 TraceCheckUtils]: 21: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,292 INFO L290 TraceCheckUtils]: 22: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,292 INFO L290 TraceCheckUtils]: 23: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,293 INFO L290 TraceCheckUtils]: 24: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,293 INFO L290 TraceCheckUtils]: 25: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,294 INFO L290 TraceCheckUtils]: 26: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,294 INFO L272 TraceCheckUtils]: 27: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3063#true} is VALID [2022-04-08 04:23:25,294 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-08 04:23:25,294 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-08 04:23:25,294 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:23:25,295 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:23:25,296 INFO L272 TraceCheckUtils]: 32: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:23:25,296 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:23:25,297 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-08 04:23:25,297 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-08 04:23:25,297 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 04:23:25,298 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:24:48,074 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-08 04:24:48,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-08 04:24:48,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:48,076 INFO L272 TraceCheckUtils]: 32: Hoare triple {3190#(= 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)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:24:48,077 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,077 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:24:48,078 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-08 04:24:48,078 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-08 04:24:48,078 INFO L272 TraceCheckUtils]: 27: Hoare triple {3190#(= 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)); {3063#true} is VALID [2022-04-08 04:24:48,078 INFO L290 TraceCheckUtils]: 26: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,079 INFO L290 TraceCheckUtils]: 25: Hoare triple {3190#(= 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; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,079 INFO L290 TraceCheckUtils]: 24: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,080 INFO L290 TraceCheckUtils]: 23: Hoare triple {3190#(= 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; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,080 INFO L290 TraceCheckUtils]: 22: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,467 INFO L290 TraceCheckUtils]: 21: Hoare triple {3224#(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; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:24:48,468 INFO L290 TraceCheckUtils]: 20: Hoare triple {3224#(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); {3224#(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-08 04:24:48,469 INFO L290 TraceCheckUtils]: 19: Hoare triple {3224#(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; {3224#(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-08 04:24:48,469 INFO L290 TraceCheckUtils]: 18: Hoare triple {3234#(= 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; {3224#(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-08 04:24:48,470 INFO L290 TraceCheckUtils]: 17: Hoare triple {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:24:48,470 INFO L290 TraceCheckUtils]: 16: Hoare triple {3063#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:24:48,470 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3063#true} {3063#true} #93#return; {3063#true} is VALID [2022-04-08 04:24:48,470 INFO L290 TraceCheckUtils]: 14: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L290 TraceCheckUtils]: 13: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-08 04:24:48,471 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-08 04:24:48,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-08 04:24:48,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#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); {3063#true} is VALID [2022-04-08 04:24:48,472 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-08 04:24:48,472 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 04:24:48,472 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:24:48,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [980570296] [2022-04-08 04:24:48,472 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:24:48,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [714586876] [2022-04-08 04:24:48,473 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [714586876] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:24:48,473 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:24:48,473 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-08 04:24:48,473 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:24:48,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [164537779] [2022-04-08 04:24:48,473 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [164537779] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:24:48,473 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:24:48,473 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 04:24:48,474 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1817050368] [2022-04-08 04:24:48,474 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:24:48,474 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-08 04:24:48,474 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:24:48,474 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 04:24:48,515 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-08 04:24:48,516 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 04:24:48,516 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:48,516 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 04:24:48,516 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=127, Unknown=0, NotChecked=0, Total=156 [2022-04-08 04:24:48,517 INFO L87 Difference]: Start difference. First operand 112 states and 150 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 04:24:49,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:49,387 INFO L93 Difference]: Finished difference Result 121 states and 158 transitions. [2022-04-08 04:24:49,387 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 04:24:49,387 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-08 04:24:49,388 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:24:49,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 04:24:49,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-08 04:24:49,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 04:24:49,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-08 04:24:49,392 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-08 04:24:49,488 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:49,491 INFO L225 Difference]: With dead ends: 121 [2022-04-08 04:24:49,491 INFO L226 Difference]: Without dead ends: 119 [2022-04-08 04:24:49,491 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=196, Unknown=0, NotChecked=0, Total=240 [2022-04-08 04:24:49,492 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 51 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 247 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 265 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 247 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 04:24:49,492 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [62 Valid, 230 Invalid, 265 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 247 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 04:24:49,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-08 04:24:49,675 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2022-04-08 04:24:49,676 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:24:49,676 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:24:49,676 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:24:49,677 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:24:49,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:49,681 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-08 04:24:49,681 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-08 04:24:49,681 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:49,681 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:49,682 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-08 04:24:49,682 INFO L87 Difference]: Start difference. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-08 04:24:49,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:49,686 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-08 04:24:49,686 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-08 04:24:49,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:49,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:49,687 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:24:49,687 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:24:49,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 04:24:49,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 153 transitions. [2022-04-08 04:24:49,691 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 153 transitions. Word has length 36 [2022-04-08 04:24:49,692 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:24:49,692 INFO L478 AbstractCegarLoop]: Abstraction has 116 states and 153 transitions. [2022-04-08 04:24:49,692 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 04:24:49,692 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 116 states and 153 transitions. [2022-04-08 04:24:49,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:49,872 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 153 transitions. [2022-04-08 04:24:49,872 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-08 04:24:49,872 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:24:49,872 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:24:49,888 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-08 04:24:50,072 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:50,073 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:24:50,073 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:24:50,073 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 3 times [2022-04-08 04:24:50,073 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:50,074 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [715799952] [2022-04-08 04:24:50,074 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:24:50,074 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 4 times [2022-04-08 04:24:50,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:24:50,074 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1126473044] [2022-04-08 04:24:50,074 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:24:50,075 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:24:50,089 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:24:50,089 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [792197077] [2022-04-08 04:24:50,089 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 04:24:50,089 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:50,089 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:24:50,090 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-08 04:24:50,091 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-08 04:24:50,129 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 04:24:50,129 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:24:50,129 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 04:24:50,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:24:50,142 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:24:50,236 INFO L272 TraceCheckUtils]: 0: Hoare triple {4009#true} call ULTIMATE.init(); {4009#true} is VALID [2022-04-08 04:24:50,236 INFO L290 TraceCheckUtils]: 1: Hoare triple {4009#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); {4009#true} is VALID [2022-04-08 04:24:50,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4009#true} {4009#true} #105#return; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L272 TraceCheckUtils]: 4: Hoare triple {4009#true} call #t~ret6 := main(); {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L290 TraceCheckUtils]: 5: Hoare triple {4009#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L272 TraceCheckUtils]: 6: Hoare triple {4009#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L290 TraceCheckUtils]: 7: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L290 TraceCheckUtils]: 8: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L290 TraceCheckUtils]: 9: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4009#true} {4009#true} #91#return; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L272 TraceCheckUtils]: 11: Hoare triple {4009#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L290 TraceCheckUtils]: 12: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-08 04:24:50,237 INFO L290 TraceCheckUtils]: 13: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L290 TraceCheckUtils]: 14: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4009#true} {4009#true} #93#return; {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L290 TraceCheckUtils]: 16: Hoare triple {4009#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L290 TraceCheckUtils]: 17: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L290 TraceCheckUtils]: 18: Hoare triple {4009#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L290 TraceCheckUtils]: 19: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-08 04:24:50,238 INFO L290 TraceCheckUtils]: 20: Hoare triple {4009#true} assume !(~c~0 >= ~b~0); {4074#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 04:24:50,239 INFO L290 TraceCheckUtils]: 21: Hoare triple {4074#(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; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 04:24:50,239 INFO L290 TraceCheckUtils]: 22: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !false; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 04:24:50,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 04:24:50,240 INFO L290 TraceCheckUtils]: 24: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !false; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 25: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4010#false} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 26: Hoare triple {4010#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; {4010#false} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 27: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {4010#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4010#false} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 29: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 30: Hoare triple {4010#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4010#false} is VALID [2022-04-08 04:24:50,241 INFO L290 TraceCheckUtils]: 31: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-08 04:24:50,242 INFO L272 TraceCheckUtils]: 32: Hoare triple {4010#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4010#false} is VALID [2022-04-08 04:24:50,242 INFO L290 TraceCheckUtils]: 33: Hoare triple {4010#false} ~cond := #in~cond; {4010#false} is VALID [2022-04-08 04:24:50,242 INFO L290 TraceCheckUtils]: 34: Hoare triple {4010#false} assume 0 == ~cond; {4010#false} is VALID [2022-04-08 04:24:50,242 INFO L290 TraceCheckUtils]: 35: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-08 04:24:50,242 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 04:24:50,242 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 04:24:50,243 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:24:50,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1126473044] [2022-04-08 04:24:50,243 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:24:50,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [792197077] [2022-04-08 04:24:50,243 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [792197077] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:24:50,243 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:24:50,243 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:24:50,243 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:24:50,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [715799952] [2022-04-08 04:24:50,244 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [715799952] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:24:50,244 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:24:50,244 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:24:50,244 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [621665462] [2022-04-08 04:24:50,244 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:24:50,244 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 36 [2022-04-08 04:24:50,245 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:24:50,245 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:24:50,270 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-08 04:24:50,270 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 04:24:50,270 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:50,270 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 04:24:50,270 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 04:24:50,270 INFO L87 Difference]: Start difference. First operand 116 states and 153 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:24:50,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:50,738 INFO L93 Difference]: Finished difference Result 165 states and 227 transitions. [2022-04-08 04:24:50,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 04:24:50,739 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 36 [2022-04-08 04:24:50,739 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:24:50,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:24:50,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-08 04:24:50,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:24:50,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-08 04:24:50,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 97 transitions. [2022-04-08 04:24:50,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:50,819 INFO L225 Difference]: With dead ends: 165 [2022-04-08 04:24:50,819 INFO L226 Difference]: Without dead ends: 127 [2022-04-08 04:24:50,820 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 33 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-08 04:24:50,820 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 18 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 135 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-08 04:24:50,821 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 135 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 04:24:50,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-08 04:24:50,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 101. [2022-04-08 04:24:50,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:24:50,978 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:24:50,979 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:24:50,979 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:24:50,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:50,983 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-08 04:24:50,983 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-08 04:24:50,984 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:50,984 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:50,984 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-08 04:24:50,985 INFO L87 Difference]: Start difference. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-08 04:24:50,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:50,989 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-08 04:24:50,989 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-08 04:24:50,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:50,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:50,990 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:24:50,990 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:24:50,990 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 04:24:50,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 128 transitions. [2022-04-08 04:24:50,993 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 128 transitions. Word has length 36 [2022-04-08 04:24:50,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:24:50,993 INFO L478 AbstractCegarLoop]: Abstraction has 101 states and 128 transitions. [2022-04-08 04:24:50,993 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 04:24:50,993 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 101 states and 128 transitions. [2022-04-08 04:24:51,147 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:51,148 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 128 transitions. [2022-04-08 04:24:51,148 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 04:24:51,148 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:24:51,148 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:24:51,165 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-08 04:24:51,351 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:51,351 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:24:51,352 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:24:51,352 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 1 times [2022-04-08 04:24:51,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:51,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1154313367] [2022-04-08 04:24:51,352 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:24:51,352 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 2 times [2022-04-08 04:24:51,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:24:51,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [161278190] [2022-04-08 04:24:51,352 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:24:51,352 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:24:51,363 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:24:51,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [436220715] [2022-04-08 04:24:51,363 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:24:51,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:51,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:24:51,365 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-08 04:24:51,373 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-08 04:24:51,412 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:24:51,413 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:24:51,413 INFO L263 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 04:24:51,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:24:51,421 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:24:51,526 INFO L272 TraceCheckUtils]: 0: Hoare triple {4912#true} call ULTIMATE.init(); {4912#true} is VALID [2022-04-08 04:24:51,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {4912#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); {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L290 TraceCheckUtils]: 2: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4912#true} {4912#true} #105#return; {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L272 TraceCheckUtils]: 4: Hoare triple {4912#true} call #t~ret6 := main(); {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L290 TraceCheckUtils]: 5: Hoare triple {4912#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L272 TraceCheckUtils]: 6: Hoare triple {4912#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L290 TraceCheckUtils]: 7: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L290 TraceCheckUtils]: 9: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4912#true} {4912#true} #91#return; {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L272 TraceCheckUtils]: 11: Hoare triple {4912#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-08 04:24:51,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4912#true} {4912#true} #93#return; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {4912#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 18: Hoare triple {4912#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-08 04:24:51,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {4912#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 04:24:51,529 INFO L290 TraceCheckUtils]: 21: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 04:24:51,529 INFO L272 TraceCheckUtils]: 22: Hoare triple {4977#(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)); {4912#true} is VALID [2022-04-08 04:24:51,529 INFO L290 TraceCheckUtils]: 23: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-08 04:24:51,529 INFO L290 TraceCheckUtils]: 24: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-08 04:24:51,529 INFO L290 TraceCheckUtils]: 25: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-08 04:24:51,530 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #95#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 04:24:51,530 INFO L272 TraceCheckUtils]: 27: Hoare triple {4977#(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)); {4912#true} is VALID [2022-04-08 04:24:51,530 INFO L290 TraceCheckUtils]: 28: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-08 04:24:51,530 INFO L290 TraceCheckUtils]: 29: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-08 04:24:51,530 INFO L290 TraceCheckUtils]: 30: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-08 04:24:51,531 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #97#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 04:24:51,531 INFO L272 TraceCheckUtils]: 32: Hoare triple {4977#(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)); {4912#true} is VALID [2022-04-08 04:24:51,531 INFO L290 TraceCheckUtils]: 33: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-08 04:24:51,531 INFO L290 TraceCheckUtils]: 34: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-08 04:24:51,531 INFO L290 TraceCheckUtils]: 35: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-08 04:24:51,532 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #99#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 04:24:51,532 INFO L272 TraceCheckUtils]: 37: Hoare triple {4977#(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)); {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:24:51,533 INFO L290 TraceCheckUtils]: 38: Hoare triple {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5033#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:51,533 INFO L290 TraceCheckUtils]: 39: Hoare triple {5033#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4913#false} is VALID [2022-04-08 04:24:51,533 INFO L290 TraceCheckUtils]: 40: Hoare triple {4913#false} assume !false; {4913#false} is VALID [2022-04-08 04:24:51,533 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 04:24:51,533 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 04:24:51,534 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:24:51,534 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [161278190] [2022-04-08 04:24:51,534 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:24:51,534 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [436220715] [2022-04-08 04:24:51,534 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [436220715] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:24:51,534 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:24:51,534 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:24:51,534 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:24:51,534 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1154313367] [2022-04-08 04:24:51,534 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1154313367] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:24:51,534 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:24:51,534 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:24:51,535 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [402340513] [2022-04-08 04:24:51,535 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:24:51,535 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-08 04:24:51,535 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:24:51,535 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 04:24:51,558 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:51,558 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 04:24:51,558 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:51,559 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 04:24:51,559 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 04:24:51,559 INFO L87 Difference]: Start difference. First operand 101 states and 128 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 04:24:51,977 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:51,977 INFO L93 Difference]: Finished difference Result 151 states and 206 transitions. [2022-04-08 04:24:51,977 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 04:24:51,977 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-08 04:24:51,977 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:24:51,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 04:24:51,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-08 04:24:51,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 04:24:51,979 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-08 04:24:51,980 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-08 04:24:52,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:52,028 INFO L225 Difference]: With dead ends: 151 [2022-04-08 04:24:52,028 INFO L226 Difference]: Without dead ends: 149 [2022-04-08 04:24:52,028 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 37 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-08 04:24:52,029 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 136 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-08 04:24:52,029 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 136 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 04:24:52,030 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2022-04-08 04:24:52,302 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 130. [2022-04-08 04:24:52,303 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:24:52,303 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 04:24:52,310 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 04:24:52,313 INFO L87 Difference]: Start difference. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 04:24:52,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:52,323 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-08 04:24:52,323 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-08 04:24:52,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:52,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:52,324 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-08 04:24:52,324 INFO L87 Difference]: Start difference. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-08 04:24:52,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:52,329 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-08 04:24:52,329 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-08 04:24:52,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:52,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:52,330 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:24:52,330 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:24:52,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 04:24:52,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 176 transitions. [2022-04-08 04:24:52,343 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 176 transitions. Word has length 41 [2022-04-08 04:24:52,343 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:24:52,343 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 176 transitions. [2022-04-08 04:24:52,343 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 04:24:52,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 176 transitions. [2022-04-08 04:24:52,610 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:52,610 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 176 transitions. [2022-04-08 04:24:52,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 04:24:52,611 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:24:52,611 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:24:52,633 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-08 04:24:52,811 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:52,811 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:24:52,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:24:52,812 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 1 times [2022-04-08 04:24:52,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:52,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1845712960] [2022-04-08 04:24:52,812 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:24:52,813 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 2 times [2022-04-08 04:24:52,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:24:52,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [290533332] [2022-04-08 04:24:52,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:24:52,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:24:52,827 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:24:52,827 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2025550372] [2022-04-08 04:24:52,827 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:24:52,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:52,828 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:24:52,832 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-08 04:24:52,844 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-08 04:24:52,891 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:24:52,891 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:24:52,892 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-08 04:24:52,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:24:52,903 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:24:53,141 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-08 04:24:53,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#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); {5901#true} is VALID [2022-04-08 04:24:53,142 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,142 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-08 04:24:53,142 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-08 04:24:53,142 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5901#true} is VALID [2022-04-08 04:24:53,142 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-08 04:24:53,143 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:24:53,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:24:53,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:24:53,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} {5901#true} #91#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-08 04:24:53,144 INFO L272 TraceCheckUtils]: 11: Hoare triple {5938#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-08 04:24:53,145 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,145 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,145 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,145 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5938#(<= 1 main_~x~0)} #93#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-08 04:24:53,146 INFO L290 TraceCheckUtils]: 16: Hoare triple {5938#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5957#(<= 1 main_~a~0)} is VALID [2022-04-08 04:24:53,146 INFO L290 TraceCheckUtils]: 17: Hoare triple {5957#(<= 1 main_~a~0)} assume !false; {5957#(<= 1 main_~a~0)} is VALID [2022-04-08 04:24:53,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {5957#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5964#(<= 1 main_~c~0)} is VALID [2022-04-08 04:24:53,151 INFO L290 TraceCheckUtils]: 19: Hoare triple {5964#(<= 1 main_~c~0)} assume !false; {5964#(<= 1 main_~c~0)} is VALID [2022-04-08 04:24:53,151 INFO L290 TraceCheckUtils]: 20: Hoare triple {5964#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5964#(<= 1 main_~c~0)} is VALID [2022-04-08 04:24:53,155 INFO L290 TraceCheckUtils]: 21: Hoare triple {5964#(<= 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; {5974#(<= 1 main_~b~0)} is VALID [2022-04-08 04:24:53,156 INFO L290 TraceCheckUtils]: 22: Hoare triple {5974#(<= 1 main_~b~0)} assume !false; {5974#(<= 1 main_~b~0)} is VALID [2022-04-08 04:24:53,156 INFO L290 TraceCheckUtils]: 23: Hoare triple {5974#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:24:53,157 INFO L290 TraceCheckUtils]: 24: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:24:53,157 INFO L290 TraceCheckUtils]: 25: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:24:53,158 INFO L290 TraceCheckUtils]: 26: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:24:53,158 INFO L272 TraceCheckUtils]: 27: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5901#true} is VALID [2022-04-08 04:24:53,158 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,158 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,158 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,159 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:24:53,159 INFO L272 TraceCheckUtils]: 32: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5901#true} is VALID [2022-04-08 04:24:53,160 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,160 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,160 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,161 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 04:24:53,161 INFO L272 TraceCheckUtils]: 37: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:24:53,162 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:53,162 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-08 04:24:53,162 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-08 04:24:53,162 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-08 04:24:53,162 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:24:53,370 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-08 04:24:53,370 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-08 04:24:53,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:53,372 INFO L272 TraceCheckUtils]: 37: Hoare triple {6044#(= 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)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:24:53,372 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:24:53,373 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,376 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,377 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,377 INFO L272 TraceCheckUtils]: 32: Hoare triple {6044#(= 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)); {5901#true} is VALID [2022-04-08 04:24:53,378 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:24:53,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,378 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,378 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,378 INFO L272 TraceCheckUtils]: 27: Hoare triple {6044#(= 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)); {5901#true} is VALID [2022-04-08 04:24:53,379 INFO L290 TraceCheckUtils]: 26: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:24:53,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {6044#(= 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; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:24:53,380 INFO L290 TraceCheckUtils]: 24: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:24:53,380 INFO L290 TraceCheckUtils]: 23: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:24:53,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-08 04:24:53,380 INFO L290 TraceCheckUtils]: 21: Hoare triple {5901#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; {5901#true} is VALID [2022-04-08 04:24:53,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {5901#true} assume !(~c~0 >= ~b~0); {5901#true} is VALID [2022-04-08 04:24:53,380 INFO L290 TraceCheckUtils]: 19: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L290 TraceCheckUtils]: 18: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L290 TraceCheckUtils]: 17: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L290 TraceCheckUtils]: 16: Hoare triple {5901#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5901#true} #93#return; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L272 TraceCheckUtils]: 11: Hoare triple {5901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-08 04:24:53,381 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5901#true} {5901#true} #91#return; {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L290 TraceCheckUtils]: 8: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-08 04:24:53,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#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); {5901#true} is VALID [2022-04-08 04:24:53,383 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-08 04:24:53,383 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-08 04:24:53,383 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:24:53,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [290533332] [2022-04-08 04:24:53,383 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:24:53,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2025550372] [2022-04-08 04:24:53,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2025550372] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 04:24:53,383 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 04:24:53,384 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [11] total 12 [2022-04-08 04:24:53,386 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:24:53,386 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1845712960] [2022-04-08 04:24:53,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1845712960] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:24:53,386 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:24:53,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:24:53,386 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [768147079] [2022-04-08 04:24:53,386 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:24:53,388 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 41 [2022-04-08 04:24:53,389 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:24:53,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:24:53,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:53,418 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 04:24:53,419 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:53,420 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 04:24:53,420 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-04-08 04:24:53,420 INFO L87 Difference]: Start difference. First operand 130 states and 176 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:24:53,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:53,912 INFO L93 Difference]: Finished difference Result 173 states and 245 transitions. [2022-04-08 04:24:53,913 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 04:24:53,913 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 41 [2022-04-08 04:24:53,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:24:53,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:24:53,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-08 04:24:53,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:24:53,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-08 04:24:53,916 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-08 04:24:53,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:53,972 INFO L225 Difference]: With dead ends: 173 [2022-04-08 04:24:53,972 INFO L226 Difference]: Without dead ends: 171 [2022-04-08 04:24:53,973 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=129, Unknown=0, NotChecked=0, Total=156 [2022-04-08 04:24:53,973 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 8 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 121 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-08 04:24:53,973 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 121 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 04:24:53,974 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-04-08 04:24:54,293 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 167. [2022-04-08 04:24:54,293 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:24:54,294 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-08 04:24:54,294 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-08 04:24:54,294 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-08 04:24:54,302 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:54,302 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-08 04:24:54,302 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-08 04:24:54,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:54,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:54,308 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-08 04:24:54,309 INFO L87 Difference]: Start difference. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-08 04:24:54,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:24:54,321 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-08 04:24:54,321 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-08 04:24:54,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:24:54,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:24:54,323 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:24:54,323 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:24:54,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-08 04:24:54,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 239 transitions. [2022-04-08 04:24:54,333 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 239 transitions. Word has length 41 [2022-04-08 04:24:54,334 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:24:54,334 INFO L478 AbstractCegarLoop]: Abstraction has 167 states and 239 transitions. [2022-04-08 04:24:54,334 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 04:24:54,334 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 167 states and 239 transitions. [2022-04-08 04:24:54,641 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:24:54,641 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 239 transitions. [2022-04-08 04:24:54,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-08 04:24:54,641 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:24:54,642 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:24:54,660 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-08 04:24:54,842 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 04:24:54,842 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:24:54,843 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:24:54,843 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 1 times [2022-04-08 04:24:54,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:24:54,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [297901670] [2022-04-08 04:24:54,843 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:24:54,843 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 2 times [2022-04-08 04:24:54,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:24:54,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2129155839] [2022-04-08 04:24:54,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:24:54,843 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:24:54,858 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:24:54,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1949579945] [2022-04-08 04:24:54,858 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:24:54,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:24:54,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:24:54,859 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-08 04:24:54,869 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-08 04:24:54,910 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:24:54,910 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:24:54,911 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-08 04:24:54,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:24:54,922 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:24:55,695 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-08 04:24:55,695 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#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); {7182#true} is VALID [2022-04-08 04:24:55,695 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:24:55,695 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:24:55,696 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:24:55,697 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:24:55,697 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-08 04:24:55,697 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7235#(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-08 04:24:55,698 INFO L290 TraceCheckUtils]: 17: Hoare triple {7235#(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; {7235#(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-08 04:24:55,698 INFO L290 TraceCheckUtils]: 18: Hoare triple {7235#(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; {7242#(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-08 04:24:55,699 INFO L290 TraceCheckUtils]: 19: Hoare triple {7242#(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; {7242#(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-08 04:24:55,699 INFO L290 TraceCheckUtils]: 20: Hoare triple {7242#(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; {7249#(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-08 04:24:55,700 INFO L290 TraceCheckUtils]: 21: Hoare triple {7249#(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; {7249#(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-08 04:24:55,700 INFO L272 TraceCheckUtils]: 22: Hoare triple {7249#(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)); {7182#true} is VALID [2022-04-08 04:24:55,700 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:55,701 INFO L290 TraceCheckUtils]: 24: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:24:55,701 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:24:55,702 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7249#(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))} #95#return; {7270#(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-08 04:24:55,703 INFO L272 TraceCheckUtils]: 27: Hoare triple {7270#(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)); {7182#true} is VALID [2022-04-08 04:24:55,704 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:55,705 INFO L290 TraceCheckUtils]: 29: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:24:55,705 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:24:55,706 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7270#(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))} #97#return; {7270#(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-08 04:24:55,706 INFO L272 TraceCheckUtils]: 32: Hoare triple {7270#(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)); {7182#true} is VALID [2022-04-08 04:24:55,706 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:24:55,706 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:24:55,706 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:24:55,707 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7270#(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))} #99#return; {7270#(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-08 04:24:55,708 INFO L272 TraceCheckUtils]: 37: Hoare triple {7270#(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)); {7182#true} is VALID [2022-04-08 04:24:55,708 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:24:55,708 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:24:55,708 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:24:55,709 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7270#(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))} #101#return; {7270#(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-08 04:24:55,709 INFO L290 TraceCheckUtils]: 42: Hoare triple {7270#(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); {7270#(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-08 04:24:55,710 INFO L290 TraceCheckUtils]: 43: Hoare triple {7270#(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; {7322#(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-08 04:24:55,711 INFO L290 TraceCheckUtils]: 44: Hoare triple {7322#(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; {7322#(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-08 04:24:55,711 INFO L290 TraceCheckUtils]: 45: Hoare triple {7322#(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); {7322#(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-08 04:24:55,712 INFO L290 TraceCheckUtils]: 46: Hoare triple {7322#(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; {7332#(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-08 04:24:55,712 INFO L290 TraceCheckUtils]: 47: Hoare triple {7332#(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; {7332#(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-08 04:24:55,713 INFO L290 TraceCheckUtils]: 48: Hoare triple {7332#(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); {7339#(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-08 04:24:55,714 INFO L272 TraceCheckUtils]: 49: Hoare triple {7339#(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)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:24:55,714 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:24:55,715 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-08 04:24:55,715 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-08 04:24:55,715 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 04:24:55,715 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:25:19,296 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-08 04:25:19,297 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-08 04:25:19,297 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:25:19,298 INFO L272 TraceCheckUtils]: 49: Hoare triple {7363#(= (+ (* 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)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:25:19,299 INFO L290 TraceCheckUtils]: 48: Hoare triple {7367#(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); {7363#(= (+ (* 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-08 04:25:19,299 INFO L290 TraceCheckUtils]: 47: Hoare triple {7367#(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; {7367#(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-08 04:25:19,524 INFO L290 TraceCheckUtils]: 46: Hoare triple {7374#(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; {7367#(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-08 04:25:19,525 INFO L290 TraceCheckUtils]: 45: Hoare triple {7374#(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); {7374#(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-08 04:25:19,526 INFO L290 TraceCheckUtils]: 44: Hoare triple {7374#(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; {7374#(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-08 04:25:19,582 INFO L290 TraceCheckUtils]: 43: Hoare triple {7384#(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; {7374#(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-08 04:25:19,582 INFO L290 TraceCheckUtils]: 42: Hoare triple {7384#(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); {7384#(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-08 04:25:19,583 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7384#(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))))} #101#return; {7384#(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-08 04:25:19,583 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:25:19,584 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:25:19,584 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:25:19,584 INFO L272 TraceCheckUtils]: 37: Hoare triple {7384#(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)); {7182#true} is VALID [2022-04-08 04:25:19,585 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7384#(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))))} #99#return; {7384#(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-08 04:25:19,585 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:25:19,585 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:25:19,585 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:25:19,585 INFO L272 TraceCheckUtils]: 32: Hoare triple {7384#(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)); {7182#true} is VALID [2022-04-08 04:25:19,587 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7421#(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))))} #97#return; {7384#(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-08 04:25:19,587 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:19,588 INFO L290 TraceCheckUtils]: 29: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:19,588 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:25:19,588 INFO L272 TraceCheckUtils]: 27: Hoare triple {7421#(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)); {7182#true} is VALID [2022-04-08 04:25:19,589 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7438#(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))))} #95#return; {7421#(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-08 04:25:19,589 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:19,590 INFO L290 TraceCheckUtils]: 24: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:19,590 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:25:19,590 INFO L272 TraceCheckUtils]: 22: Hoare triple {7438#(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)); {7182#true} is VALID [2022-04-08 04:25:19,591 INFO L290 TraceCheckUtils]: 21: Hoare triple {7438#(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; {7438#(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-08 04:25:19,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {7457#(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; {7438#(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-08 04:25:19,592 INFO L290 TraceCheckUtils]: 19: Hoare triple {7457#(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; {7457#(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-08 04:25:19,593 INFO L290 TraceCheckUtils]: 18: Hoare triple {7182#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7457#(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-08 04:25:19,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {7182#true} assume !false; {7182#true} is VALID [2022-04-08 04:25:19,593 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7182#true} is VALID [2022-04-08 04:25:19,593 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-08 04:25:19,593 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:25:19,610 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:25:19,610 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-08 04:25:19,611 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-08 04:25:19,612 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-08 04:25:19,612 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#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); {7182#true} is VALID [2022-04-08 04:25:19,612 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-08 04:25:19,612 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 04:25:19,612 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:25:19,612 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2129155839] [2022-04-08 04:25:19,613 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:25:19,613 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1949579945] [2022-04-08 04:25:19,613 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1949579945] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:25:19,613 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:25:19,613 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-08 04:25:19,613 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:25:19,613 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [297901670] [2022-04-08 04:25:19,613 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [297901670] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:25:19,614 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:25:19,614 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 04:25:19,614 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1786133062] [2022-04-08 04:25:19,614 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:25:19,614 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 53 [2022-04-08 04:25:19,614 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:25:19,615 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 04:25:19,652 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-08 04:25:19,652 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 04:25:19,652 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:19,653 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 04:25:19,653 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-08 04:25:19,653 INFO L87 Difference]: Start difference. First operand 167 states and 239 transitions. Second operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 04:25:21,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:21,718 INFO L93 Difference]: Finished difference Result 230 states and 330 transitions. [2022-04-08 04:25:21,718 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 04:25:21,718 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 53 [2022-04-08 04:25:21,718 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:25:21,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 04:25:21,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-08 04:25:21,720 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 04:25:21,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-08 04:25:21,722 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-08 04:25:21,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:21,874 INFO L225 Difference]: With dead ends: 230 [2022-04-08 04:25:21,875 INFO L226 Difference]: Without dead ends: 227 [2022-04-08 04:25:21,875 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 85 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-08 04:25:21,876 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 49 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 595 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 04:25:21,876 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 245 Invalid, 595 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-08 04:25:21,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states. [2022-04-08 04:25:22,309 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 224. [2022-04-08 04:25:22,309 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:25:22,310 INFO L82 GeneralOperation]: Start isEquivalent. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:22,310 INFO L74 IsIncluded]: Start isIncluded. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:22,311 INFO L87 Difference]: Start difference. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:22,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:22,319 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-08 04:25:22,319 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-08 04:25:22,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:22,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:22,322 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-08 04:25:22,322 INFO L87 Difference]: Start difference. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-08 04:25:22,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:22,332 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-08 04:25:22,332 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-08 04:25:22,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:22,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:22,333 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:25:22,333 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:25:22,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:22,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 323 transitions. [2022-04-08 04:25:22,342 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 323 transitions. Word has length 53 [2022-04-08 04:25:22,343 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:25:22,343 INFO L478 AbstractCegarLoop]: Abstraction has 224 states and 323 transitions. [2022-04-08 04:25:22,343 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 04:25:22,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 323 transitions. [2022-04-08 04:25:22,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 323 edges. 323 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:22,807 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 323 transitions. [2022-04-08 04:25:22,807 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-08 04:25:22,807 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:25:22,807 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:25:22,824 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-08 04:25:23,012 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 04:25:23,012 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:25:23,013 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:25:23,013 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 3 times [2022-04-08 04:25:23,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:23,013 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [952628531] [2022-04-08 04:25:23,013 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:25:23,013 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 4 times [2022-04-08 04:25:23,014 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:25:23,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1428899114] [2022-04-08 04:25:23,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:25:23,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:25:23,035 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:25:23,035 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [430643826] [2022-04-08 04:25:23,035 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 04:25:23,035 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:25:23,035 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:25:23,038 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-08 04:25:23,059 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-08 04:25:23,112 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 04:25:23,112 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:25:23,113 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 04:25:23,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:25:23,128 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:25:23,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-08 04:25:23,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#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); {8890#true} is VALID [2022-04-08 04:25:23,342 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,342 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-08 04:25:23,342 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-08 04:25:23,342 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8890#true} is VALID [2022-04-08 04:25:23,342 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,343 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-08 04:25:23,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-08 04:25:23,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-08 04:25:23,344 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-08 04:25:23,344 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-08 04:25:23,347 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 04:25:23,348 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(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; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 04:25:23,348 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 04:25:23,349 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 04:25:23,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 04:25:23,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,350 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,350 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,350 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,350 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,350 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,351 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,351 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,351 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,351 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,351 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,351 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,352 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,352 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,352 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,352 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,352 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,352 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,352 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,353 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,353 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,353 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,354 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-08 04:25:23,354 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-08 04:25:23,354 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-08 04:25:23,355 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 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; {9053#(< 0 main_~b~0)} is VALID [2022-04-08 04:25:23,355 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-08 04:25:23,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-08 04:25:23,355 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#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)); {8891#false} is VALID [2022-04-08 04:25:23,356 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-08 04:25:23,356 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-08 04:25:23,356 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-08 04:25:23,356 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 04:25:23,356 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:25:23,545 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-08 04:25:23,545 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-08 04:25:23,545 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-08 04:25:23,545 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#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)); {8891#false} is VALID [2022-04-08 04:25:23,551 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-08 04:25:23,552 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-08 04:25:23,552 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 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; {9053#(< 0 main_~b~0)} is VALID [2022-04-08 04:25:23,552 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-08 04:25:23,553 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-08 04:25:23,554 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-08 04:25:23,554 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,555 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,555 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,555 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,555 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,555 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,556 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,556 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,556 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,556 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,556 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,557 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,557 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,557 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,557 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,557 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,557 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,558 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,558 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,558 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,558 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,558 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,558 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 04:25:23,559 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 04:25:23,559 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 04:25:23,559 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(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; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-08 04:25:23,560 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-08 04:25:23,560 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8890#true} is VALID [2022-04-08 04:25:23,561 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-08 04:25:23,562 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-08 04:25:23,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-08 04:25:23,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#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); {8890#true} is VALID [2022-04-08 04:25:23,562 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-08 04:25:23,562 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 04:25:23,562 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:25:23,562 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1428899114] [2022-04-08 04:25:23,562 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:25:23,562 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [430643826] [2022-04-08 04:25:23,562 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [430643826] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:25:23,563 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:25:23,563 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-08 04:25:23,563 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:25:23,563 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [952628531] [2022-04-08 04:25:23,563 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [952628531] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:25:23,563 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:25:23,563 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 04:25:23,563 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [485666384] [2022-04-08 04:25:23,563 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:25:23,564 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 58 [2022-04-08 04:25:23,564 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:25:23,564 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:23,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:23,594 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 04:25:23,594 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:23,594 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 04:25:23,594 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 04:25:23,594 INFO L87 Difference]: Start difference. First operand 224 states and 323 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:25,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:25,471 INFO L93 Difference]: Finished difference Result 335 states and 499 transitions. [2022-04-08 04:25:25,471 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 04:25:25,472 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 58 [2022-04-08 04:25:25,472 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:25:25,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:25,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-08 04:25:25,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:25,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-08 04:25:25,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 153 transitions. [2022-04-08 04:25:25,623 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:25,634 INFO L225 Difference]: With dead ends: 335 [2022-04-08 04:25:25,634 INFO L226 Difference]: Without dead ends: 328 [2022-04-08 04:25:25,636 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 112 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-08 04:25:25,637 INFO L913 BasicCegarLoop]: 82 mSDtfsCounter, 46 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 283 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-08 04:25:25,637 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 283 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 04:25:25,638 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-08 04:25:26,205 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 243. [2022-04-08 04:25:26,205 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:25:26,206 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:26,206 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:26,207 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:26,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:26,221 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-08 04:25:26,221 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-08 04:25:26,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:26,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:26,224 INFO L74 IsIncluded]: Start isIncluded. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-08 04:25:26,224 INFO L87 Difference]: Start difference. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-08 04:25:26,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:26,239 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-08 04:25:26,239 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-08 04:25:26,241 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:26,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:26,241 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:25:26,241 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:25:26,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:26,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 243 states to 243 states and 350 transitions. [2022-04-08 04:25:26,251 INFO L78 Accepts]: Start accepts. Automaton has 243 states and 350 transitions. Word has length 58 [2022-04-08 04:25:26,251 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:25:26,251 INFO L478 AbstractCegarLoop]: Abstraction has 243 states and 350 transitions. [2022-04-08 04:25:26,251 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:26,251 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 243 states and 350 transitions. [2022-04-08 04:25:26,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 350 edges. 350 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:26,815 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 350 transitions. [2022-04-08 04:25:26,816 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-08 04:25:26,816 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:25:26,816 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:25:26,832 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-08 04:25:27,023 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 04:25:27,024 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:25:27,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:25:27,024 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 1 times [2022-04-08 04:25:27,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:27,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1041327116] [2022-04-08 04:25:27,025 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:25:27,025 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 2 times [2022-04-08 04:25:27,025 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:25:27,025 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1715297323] [2022-04-08 04:25:27,025 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:25:27,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:25:27,040 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:25:27,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1943162860] [2022-04-08 04:25:27,040 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:25:27,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:25:27,041 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:25:27,041 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-08 04:25:27,054 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-08 04:25:27,098 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:25:27,098 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:25:27,099 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-08 04:25:27,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:25:27,113 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:25:27,419 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-08 04:25:27,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#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); {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-08 04:25:27,420 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,421 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:25:27,421 INFO L290 TraceCheckUtils]: 13: Hoare triple {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:25:27,421 INFO L290 TraceCheckUtils]: 14: Hoare triple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:25:27,422 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} {11084#true} #93#return; {11136#(<= 1 main_~y~0)} is VALID [2022-04-08 04:25:27,422 INFO L290 TraceCheckUtils]: 16: Hoare triple {11136#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11140#(<= 1 main_~b~0)} is VALID [2022-04-08 04:25:27,422 INFO L290 TraceCheckUtils]: 17: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-08 04:25:27,423 INFO L290 TraceCheckUtils]: 18: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11140#(<= 1 main_~b~0)} is VALID [2022-04-08 04:25:27,423 INFO L290 TraceCheckUtils]: 19: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-08 04:25:27,423 INFO L290 TraceCheckUtils]: 20: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,424 INFO L290 TraceCheckUtils]: 21: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !false; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,424 INFO L272 TraceCheckUtils]: 22: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,424 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,424 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,424 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,425 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #95#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,425 INFO L272 TraceCheckUtils]: 27: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,425 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,425 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,425 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,425 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #97#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,426 INFO L272 TraceCheckUtils]: 32: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,426 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,426 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,426 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,426 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #99#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,426 INFO L272 TraceCheckUtils]: 37: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,426 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,427 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,427 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,427 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #101#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,428 INFO L290 TraceCheckUtils]: 42: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,428 INFO L290 TraceCheckUtils]: 43: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !false; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,428 INFO L272 TraceCheckUtils]: 44: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,428 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,428 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,428 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,429 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #95#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,429 INFO L272 TraceCheckUtils]: 49: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,429 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,429 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,429 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,430 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #97#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,430 INFO L272 TraceCheckUtils]: 54: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,430 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,430 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,430 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,431 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #99#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-08 04:25:27,431 INFO L272 TraceCheckUtils]: 59: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:25:27,431 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:25:27,432 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-08 04:25:27,432 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-08 04:25:27,432 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 17 proven. 5 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-08 04:25:27,432 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:25:27,691 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-08 04:25:27,691 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-08 04:25:27,692 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:25:27,692 INFO L272 TraceCheckUtils]: 59: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:25:27,693 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,693 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,693 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,693 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,693 INFO L272 TraceCheckUtils]: 54: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-08 04:25:27,694 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,694 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,694 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,694 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,694 INFO L272 TraceCheckUtils]: 49: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-08 04:25:27,695 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,695 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,695 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,695 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,695 INFO L272 TraceCheckUtils]: 44: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-08 04:25:27,695 INFO L290 TraceCheckUtils]: 43: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,697 INFO L290 TraceCheckUtils]: 42: Hoare triple {11292#(= 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; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,698 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #101#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,698 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,698 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,698 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,698 INFO L272 TraceCheckUtils]: 37: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,699 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,699 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,699 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,699 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,699 INFO L272 TraceCheckUtils]: 32: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-08 04:25:27,700 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,700 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,700 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,700 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,700 INFO L272 TraceCheckUtils]: 27: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-08 04:25:27,701 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,701 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,701 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,701 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,701 INFO L272 TraceCheckUtils]: 22: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-08 04:25:27,711 INFO L290 TraceCheckUtils]: 21: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,712 INFO L290 TraceCheckUtils]: 20: Hoare triple {11084#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 04:25:27,712 INFO L290 TraceCheckUtils]: 19: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-08 04:25:27,712 INFO L290 TraceCheckUtils]: 18: Hoare triple {11084#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11084#true} is VALID [2022-04-08 04:25:27,712 INFO L290 TraceCheckUtils]: 17: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-08 04:25:27,712 INFO L290 TraceCheckUtils]: 16: Hoare triple {11084#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11084#true} is VALID [2022-04-08 04:25:27,712 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11084#true} {11084#true} #93#return; {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L290 TraceCheckUtils]: 14: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L290 TraceCheckUtils]: 13: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-08 04:25:27,713 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#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); {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-08 04:25:27,714 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-08 04:25:27,715 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:25:27,715 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1715297323] [2022-04-08 04:25:27,715 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:25:27,715 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1943162860] [2022-04-08 04:25:27,715 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1943162860] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 04:25:27,715 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 04:25:27,715 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-08 04:25:27,716 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:25:27,716 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1041327116] [2022-04-08 04:25:27,716 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1041327116] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:25:27,716 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:25:27,716 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:25:27,716 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1771006745] [2022-04-08 04:25:27,716 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:25:27,716 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 63 [2022-04-08 04:25:27,717 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:25:27,717 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-08 04:25:27,750 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-08 04:25:27,750 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 04:25:27,750 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:27,750 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 04:25:27,751 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-08 04:25:27,751 INFO L87 Difference]: Start difference. First operand 243 states and 350 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-08 04:25:28,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:28,450 INFO L93 Difference]: Finished difference Result 249 states and 355 transitions. [2022-04-08 04:25:28,450 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 04:25:28,450 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 63 [2022-04-08 04:25:28,451 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:25:28,451 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-08 04:25:28,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-08 04:25:28,452 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-08 04:25:28,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-08 04:25:28,452 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-08 04:25:28,499 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:28,505 INFO L225 Difference]: With dead ends: 249 [2022-04-08 04:25:28,505 INFO L226 Difference]: Without dead ends: 247 [2022-04-08 04:25:28,505 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 114 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-08 04:25:28,506 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 9 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 119 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-08 04:25:28,506 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 119 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 04:25:28,507 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-04-08 04:25:29,181 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 247. [2022-04-08 04:25:29,182 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:25:29,182 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:29,183 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:29,183 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:29,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:29,191 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-08 04:25:29,191 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-08 04:25:29,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:29,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:29,193 INFO L74 IsIncluded]: Start isIncluded. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-08 04:25:29,193 INFO L87 Difference]: Start difference. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-08 04:25:29,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:29,202 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-08 04:25:29,202 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-08 04:25:29,203 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:29,203 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:29,203 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:25:29,203 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:25:29,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:29,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 247 states to 247 states and 353 transitions. [2022-04-08 04:25:29,212 INFO L78 Accepts]: Start accepts. Automaton has 247 states and 353 transitions. Word has length 63 [2022-04-08 04:25:29,213 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:25:29,213 INFO L478 AbstractCegarLoop]: Abstraction has 247 states and 353 transitions. [2022-04-08 04:25:29,213 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:29,213 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 247 states and 353 transitions. [2022-04-08 04:25:29,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:29,818 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-08 04:25:29,819 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-08 04:25:29,819 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:25:29,819 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:25:29,835 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-08 04:25:30,019 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-08 04:25:30,020 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:25:30,020 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:25:30,020 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 1 times [2022-04-08 04:25:30,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:30,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1270574116] [2022-04-08 04:25:30,021 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:25:30,021 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 2 times [2022-04-08 04:25:30,021 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:25:30,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1440392281] [2022-04-08 04:25:30,021 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:25:30,021 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:25:30,032 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:25:30,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [158646927] [2022-04-08 04:25:30,033 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:25:30,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:25:30,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:25:30,034 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-08 04:25:30,034 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-08 04:25:30,101 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:25:30,101 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:25:30,102 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-08 04:25:30,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:25:30,127 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:25:30,286 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-08 04:25:30,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#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); {12960#true} is VALID [2022-04-08 04:25:30,286 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:30,286 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-08 04:25:30,286 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-08 04:25:30,286 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12960#true} is VALID [2022-04-08 04:25:30,286 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-08 04:25:30,287 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#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; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-08 04:25:30,288 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:30,289 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:25:30,289 INFO L290 TraceCheckUtils]: 34: Hoare triple {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:30,289 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:30,290 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,290 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-08 04:25:30,290 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:30,290 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:30,290 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:30,291 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,291 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-08 04:25:30,291 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:30,291 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:30,291 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:30,300 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,300 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,301 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= 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; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,301 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,302 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:30,302 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:30,303 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:30,303 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:30,304 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:30,304 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:30,304 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:30,305 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= 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)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:25:30,306 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:25:30,306 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-08 04:25:30,306 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-08 04:25:30,306 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-08 04:25:30,307 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:25:48,151 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-08 04:25:48,152 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-08 04:25:48,152 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:25:48,153 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= 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)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:25:48,153 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:48,153 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:48,154 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:48,154 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:48,154 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:48,155 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 04:25:48,155 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,155 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,156 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= 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; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,156 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,157 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,157 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:48,157 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:48,157 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:48,157 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-08 04:25:48,158 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,158 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:48,158 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:48,158 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:48,158 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-08 04:25:48,159 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:25:48,159 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:48,159 INFO L290 TraceCheckUtils]: 34: Hoare triple {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:25:48,160 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-08 04:25:48,160 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#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; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:48,161 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-08 04:25:48,162 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-08 04:25:48,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#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); {12960#true} is VALID [2022-04-08 04:25:48,163 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-08 04:25:48,163 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-08 04:25:48,163 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:25:48,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1440392281] [2022-04-08 04:25:48,163 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:25:48,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [158646927] [2022-04-08 04:25:48,164 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [158646927] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:25:48,164 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:25:48,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 04:25:48,164 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:25:48,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1270574116] [2022-04-08 04:25:48,164 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1270574116] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:25:48,164 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:25:48,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 04:25:48,164 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [876142928] [2022-04-08 04:25:48,164 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:25:48,165 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 61 [2022-04-08 04:25:48,165 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:25:48,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:48,201 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-08 04:25:48,201 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 04:25:48,201 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:48,202 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 04:25:48,202 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 04:25:48,202 INFO L87 Difference]: Start difference. First operand 247 states and 353 transitions. Second operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:49,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:49,223 INFO L93 Difference]: Finished difference Result 261 states and 364 transitions. [2022-04-08 04:25:49,223 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 04:25:49,223 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 61 [2022-04-08 04:25:49,223 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:25:49,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:49,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-08 04:25:49,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:49,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-08 04:25:49,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 53 transitions. [2022-04-08 04:25:49,278 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-08 04:25:49,284 INFO L225 Difference]: With dead ends: 261 [2022-04-08 04:25:49,285 INFO L226 Difference]: Without dead ends: 259 [2022-04-08 04:25:49,285 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 04:25:49,286 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 21 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 116 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 04:25:49,286 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 144 Invalid, 116 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 04:25:49,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-08 04:25:49,871 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 259. [2022-04-08 04:25:49,871 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:25:49,872 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:49,873 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:49,873 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:49,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:49,880 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-08 04:25:49,880 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-08 04:25:49,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:49,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:49,882 INFO L74 IsIncluded]: Start isIncluded. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-08 04:25:49,882 INFO L87 Difference]: Start difference. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-08 04:25:49,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:49,890 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-08 04:25:49,890 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-08 04:25:49,891 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:49,891 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:49,891 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:25:49,891 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:25:49,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-08 04:25:49,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 259 states to 259 states and 362 transitions. [2022-04-08 04:25:49,900 INFO L78 Accepts]: Start accepts. Automaton has 259 states and 362 transitions. Word has length 61 [2022-04-08 04:25:49,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:25:49,901 INFO L478 AbstractCegarLoop]: Abstraction has 259 states and 362 transitions. [2022-04-08 04:25:49,901 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 04:25:49,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 259 states and 362 transitions. [2022-04-08 04:25:50,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 362 edges. 362 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:50,603 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-08 04:25:50,604 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 04:25:50,604 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:25:50,605 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 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] [2022-04-08 04:25:50,623 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-08 04:25:50,811 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 04:25:50,812 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:25:50,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:25:50,812 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 3 times [2022-04-08 04:25:50,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:50,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [938913078] [2022-04-08 04:25:50,812 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:25:50,812 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 4 times [2022-04-08 04:25:50,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:25:50,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1996409846] [2022-04-08 04:25:50,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:25:50,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:25:50,823 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:25:50,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1955555652] [2022-04-08 04:25:50,823 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 04:25:50,823 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:25:50,823 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:25:50,824 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-08 04:25:50,840 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-08 04:25:50,872 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 04:25:50,872 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:25:50,873 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 04:25:50,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:25:50,886 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:25:51,070 INFO L272 TraceCheckUtils]: 0: Hoare triple {14899#true} call ULTIMATE.init(); {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 1: Hoare triple {14899#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); {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 2: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14899#true} {14899#true} #105#return; {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L272 TraceCheckUtils]: 4: Hoare triple {14899#true} call #t~ret6 := main(); {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {14899#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L272 TraceCheckUtils]: 6: Hoare triple {14899#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 9: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14899#true} {14899#true} #91#return; {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L272 TraceCheckUtils]: 11: Hoare triple {14899#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-08 04:25:51,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14899#true} {14899#true} #93#return; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 16: Hoare triple {14899#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 17: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 19: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {14899#true} assume !(~c~0 >= ~b~0); {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 21: Hoare triple {14899#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; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 22: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-08 04:25:51,072 INFO L290 TraceCheckUtils]: 23: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-08 04:25:51,078 INFO L290 TraceCheckUtils]: 24: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-08 04:25:51,080 INFO L290 TraceCheckUtils]: 25: Hoare triple {14899#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 04:25:51,080 INFO L290 TraceCheckUtils]: 26: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !false; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 04:25:51,080 INFO L272 TraceCheckUtils]: 27: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14899#true} is VALID [2022-04-08 04:25:51,080 INFO L290 TraceCheckUtils]: 28: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-08 04:25:51,080 INFO L290 TraceCheckUtils]: 29: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-08 04:25:51,080 INFO L290 TraceCheckUtils]: 30: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,081 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #95#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 04:25:51,081 INFO L272 TraceCheckUtils]: 32: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14899#true} is VALID [2022-04-08 04:25:51,081 INFO L290 TraceCheckUtils]: 33: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-08 04:25:51,081 INFO L290 TraceCheckUtils]: 34: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-08 04:25:51,081 INFO L290 TraceCheckUtils]: 35: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,082 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #97#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 04:25:51,082 INFO L272 TraceCheckUtils]: 37: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14899#true} is VALID [2022-04-08 04:25:51,082 INFO L290 TraceCheckUtils]: 38: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-08 04:25:51,082 INFO L290 TraceCheckUtils]: 39: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-08 04:25:51,082 INFO L290 TraceCheckUtils]: 40: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,082 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #99#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 04:25:51,083 INFO L272 TraceCheckUtils]: 42: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {14899#true} is VALID [2022-04-08 04:25:51,083 INFO L290 TraceCheckUtils]: 43: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-08 04:25:51,083 INFO L290 TraceCheckUtils]: 44: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-08 04:25:51,083 INFO L290 TraceCheckUtils]: 45: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-08 04:25:51,083 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #101#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 04:25:51,084 INFO L290 TraceCheckUtils]: 47: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {15046#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 04:25:51,084 INFO L290 TraceCheckUtils]: 48: Hoare triple {15046#(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; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 49: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !false; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 50: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 51: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L272 TraceCheckUtils]: 52: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 53: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 54: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 55: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {14900#false} {14900#false} #95#return; {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L272 TraceCheckUtils]: 57: Hoare triple {14900#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14900#false} is VALID [2022-04-08 04:25:51,085 INFO L290 TraceCheckUtils]: 58: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L290 TraceCheckUtils]: 59: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L290 TraceCheckUtils]: 60: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {14900#false} {14900#false} #97#return; {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L272 TraceCheckUtils]: 62: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L290 TraceCheckUtils]: 63: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L290 TraceCheckUtils]: 64: Hoare triple {14900#false} assume 0 == ~cond; {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L290 TraceCheckUtils]: 65: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-08 04:25:51,086 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 04:25:51,086 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 04:25:51,086 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:25:51,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1996409846] [2022-04-08 04:25:51,087 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:25:51,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1955555652] [2022-04-08 04:25:51,087 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1955555652] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:25:51,087 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:25:51,087 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:25:51,087 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:25:51,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [938913078] [2022-04-08 04:25:51,087 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [938913078] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:25:51,087 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:25:51,087 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 04:25:51,087 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [226535119] [2022-04-08 04:25:51,088 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:25:51,088 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 04:25:51,088 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:25:51,088 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 04:25:51,122 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:51,122 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 04:25:51,123 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:51,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 04:25:51,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 04:25:51,123 INFO L87 Difference]: Start difference. First operand 259 states and 362 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 04:25:51,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:51,947 INFO L93 Difference]: Finished difference Result 445 states and 620 transitions. [2022-04-08 04:25:51,947 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 04:25:51,948 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 04:25:51,948 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:25:51,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 04:25:51,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-08 04:25:51,949 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 04:25:51,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-08 04:25:51,951 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 80 transitions. [2022-04-08 04:25:52,024 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:52,031 INFO L225 Difference]: With dead ends: 445 [2022-04-08 04:25:52,032 INFO L226 Difference]: Without dead ends: 270 [2022-04-08 04:25:52,034 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 63 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-08 04:25:52,035 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 3 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 94 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-08 04:25:52,035 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 94 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 04:25:52,036 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 270 states. [2022-04-08 04:25:52,772 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 270 to 250. [2022-04-08 04:25:52,772 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:25:52,775 INFO L82 GeneralOperation]: Start isEquivalent. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 04:25:52,776 INFO L74 IsIncluded]: Start isIncluded. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 04:25:52,776 INFO L87 Difference]: Start difference. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 04:25:52,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:52,784 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-08 04:25:52,784 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-08 04:25:52,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:52,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:52,786 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-08 04:25:52,786 INFO L87 Difference]: Start difference. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-08 04:25:52,794 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:25:52,794 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-08 04:25:52,794 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-08 04:25:52,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:25:52,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:25:52,795 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:25:52,795 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:25:52,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 04:25:52,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 344 transitions. [2022-04-08 04:25:52,804 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 344 transitions. Word has length 66 [2022-04-08 04:25:52,804 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:25:52,804 INFO L478 AbstractCegarLoop]: Abstraction has 250 states and 344 transitions. [2022-04-08 04:25:52,804 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 04:25:52,804 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 250 states and 344 transitions. [2022-04-08 04:25:53,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 344 edges. 344 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:25:53,598 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 344 transitions. [2022-04-08 04:25:53,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 04:25:53,599 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:25:53,599 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:25:53,617 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-08 04:25:53,807 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-08 04:25:53,807 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:25:53,808 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:25:53,808 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 5 times [2022-04-08 04:25:53,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:25:53,808 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [992543521] [2022-04-08 04:25:53,808 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:25:53,808 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 6 times [2022-04-08 04:25:53,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:25:53,808 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [101344347] [2022-04-08 04:25:53,808 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:25:53,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:25:53,821 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:25:53,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [488788974] [2022-04-08 04:25:53,822 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 04:25:53,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:25:53,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:25:53,823 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-08 04:25:53,835 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-08 04:25:53,880 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 04:25:53,880 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:25:53,881 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-08 04:25:53,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:25:53,894 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:26:31,985 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:26:39,171 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:26:39,852 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#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); {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:26:39,852 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-08 04:26:39,853 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17087#(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-08 04:26:39,854 INFO L290 TraceCheckUtils]: 17: Hoare triple {17087#(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; {17087#(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-08 04:26:39,854 INFO L290 TraceCheckUtils]: 18: Hoare triple {17087#(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; {17094#(and (= main_~r~0 0) (= 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-08 04:26:39,855 INFO L290 TraceCheckUtils]: 19: Hoare triple {17094#(and (= main_~r~0 0) (= 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; {17094#(and (= main_~r~0 0) (= 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-08 04:26:39,855 INFO L290 TraceCheckUtils]: 20: Hoare triple {17094#(and (= main_~r~0 0) (= 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); {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 04:26:39,859 INFO L290 TraceCheckUtils]: 21: Hoare triple {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~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; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 04:26:39,860 INFO L290 TraceCheckUtils]: 22: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 04:26:39,861 INFO L290 TraceCheckUtils]: 23: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~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; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,861 INFO L290 TraceCheckUtils]: 24: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !false; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,862 INFO L290 TraceCheckUtils]: 25: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,862 INFO L290 TraceCheckUtils]: 26: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !false; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,862 INFO L272 TraceCheckUtils]: 27: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,863 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:26:39,863 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:26:39,863 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,864 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #95#return; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,864 INFO L272 TraceCheckUtils]: 32: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,864 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:26:39,865 INFO L290 TraceCheckUtils]: 34: Hoare triple {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:26:39,865 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:26:39,867 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #97#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,867 INFO L272 TraceCheckUtils]: 37: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,867 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:26:39,867 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:26:39,867 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,868 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #99#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,869 INFO L272 TraceCheckUtils]: 42: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,869 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:26:39,869 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:26:39,869 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,870 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #101#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,871 INFO L290 TraceCheckUtils]: 47: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-08 04:26:39,872 INFO L290 TraceCheckUtils]: 48: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 04:26:39,872 INFO L290 TraceCheckUtils]: 49: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 04:26:39,873 INFO L290 TraceCheckUtils]: 50: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 04:26:39,876 INFO L290 TraceCheckUtils]: 51: Hoare triple {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= 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; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-08 04:26:39,877 INFO L290 TraceCheckUtils]: 52: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !false; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-08 04:26:39,877 INFO L290 TraceCheckUtils]: 53: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-08 04:26:39,878 INFO L290 TraceCheckUtils]: 54: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-08 04:26:39,878 INFO L290 TraceCheckUtils]: 55: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-08 04:26:39,879 INFO L290 TraceCheckUtils]: 56: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-08 04:26:39,879 INFO L272 TraceCheckUtils]: 57: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:26:39,879 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:26:39,879 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:26:39,879 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:26:39,880 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} #95#return; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-08 04:26:39,882 INFO L272 TraceCheckUtils]: 62: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:26:39,882 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:26:39,882 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-08 04:26:39,882 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-08 04:26:39,883 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-08 04:26:39,883 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:26:56,276 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:27:00,575 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-08 04:27:00,576 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-08 04:27:00,576 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:27:00,577 INFO L272 TraceCheckUtils]: 62: Hoare triple {17258#(= 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)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:27:00,577 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:27:00,577 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:00,578 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:27:00,578 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:27:00,578 INFO L272 TraceCheckUtils]: 57: Hoare triple {17258#(= 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)); {17034#true} is VALID [2022-04-08 04:27:00,578 INFO L290 TraceCheckUtils]: 56: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:27:00,578 INFO L290 TraceCheckUtils]: 55: Hoare triple {17258#(= 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; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:27:00,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:27:00,579 INFO L290 TraceCheckUtils]: 53: Hoare triple {17258#(= 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; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:27:00,579 INFO L290 TraceCheckUtils]: 52: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:27:02,581 WARN L290 TraceCheckUtils]: 51: Hoare triple {17292#(= (+ (* 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; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 04:27:02,582 INFO L290 TraceCheckUtils]: 50: Hoare triple {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {17292#(= (+ (* 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-08 04:27:02,582 INFO L290 TraceCheckUtils]: 49: Hoare triple {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} assume !false; {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 04:27:02,768 INFO L290 TraceCheckUtils]: 48: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 04:27:02,768 INFO L290 TraceCheckUtils]: 47: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} assume !(~c~0 >= 2 * ~v~0); {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-08 04:27:02,769 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} #101#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-08 04:27:02,769 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:02,769 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:27:02,769 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:27:02,770 INFO L272 TraceCheckUtils]: 42: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:27:02,770 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} #99#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-08 04:27:02,770 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:02,770 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:27:02,771 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:27:02,771 INFO L272 TraceCheckUtils]: 37: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:27:02,772 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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)))))} #97#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-08 04:27:02,772 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:02,772 INFO L290 TraceCheckUtils]: 34: Hoare triple {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:02,773 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:27:02,773 INFO L272 TraceCheckUtils]: 32: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:27:02,773 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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)))))} #95#return; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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-08 04:27:02,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:02,774 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:27:02,774 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:27:02,774 INFO L272 TraceCheckUtils]: 27: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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)); {17034#true} is VALID [2022-04-08 04:27:02,774 INFO L290 TraceCheckUtils]: 26: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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-08 04:27:02,775 INFO L290 TraceCheckUtils]: 25: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~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; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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-08 04:27:02,776 INFO L290 TraceCheckUtils]: 24: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~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; {17375#(or (<= (* main_~b~0 2) main_~c~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-08 04:27:02,776 INFO L290 TraceCheckUtils]: 23: Hoare triple {17382#(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))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17375#(or (<= (* main_~b~0 2) main_~c~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-08 04:27:02,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {17382#(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))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {17382#(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))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 04:27:04,784 WARN L290 TraceCheckUtils]: 21: Hoare triple {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ 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))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) 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; {17382#(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))) (<= (* main_~b~0 2) main_~a~0))} is UNKNOWN [2022-04-08 04:27:04,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ 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))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !(~c~0 >= ~b~0); {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ 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))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0))))))} is VALID [2022-04-08 04:27:04,786 INFO L290 TraceCheckUtils]: 19: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ 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))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !false; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ 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))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-08 04:27:04,788 INFO L290 TraceCheckUtils]: 18: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (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))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ 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))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-08 04:27:04,790 INFO L290 TraceCheckUtils]: 17: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (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))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !false; {17400#(or (and (or (forall ((main_~p~0 Int)) (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))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-08 04:27:04,791 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17400#(or (and (or (forall ((main_~p~0 Int)) (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))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-08 04:27:04,791 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-08 04:27:04,791 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:04,791 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:27:04,791 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:27:04,791 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#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); {17034#true} is VALID [2022-04-08 04:27:04,792 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-08 04:27:04,793 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 16 proven. 28 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-08 04:27:04,793 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:27:04,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [101344347] [2022-04-08 04:27:04,793 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:27:04,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [488788974] [2022-04-08 04:27:04,794 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [488788974] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:27:04,794 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:27:04,794 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16] total 28 [2022-04-08 04:27:04,794 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:27:04,794 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [992543521] [2022-04-08 04:27:04,794 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [992543521] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:27:04,794 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:27:04,794 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 04:27:04,795 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2041327039] [2022-04-08 04:27:04,795 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:27:04,795 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-08 04:27:04,795 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:27:04,795 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 04:27:04,849 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-08 04:27:04,850 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 04:27:04,850 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:27:04,850 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 04:27:04,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=124, Invalid=632, Unknown=0, NotChecked=0, Total=756 [2022-04-08 04:27:04,851 INFO L87 Difference]: Start difference. First operand 250 states and 344 transitions. Second operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 04:27:11,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:27:11,336 INFO L93 Difference]: Finished difference Result 321 states and 431 transitions. [2022-04-08 04:27:11,336 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 04:27:11,336 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-08 04:27:11,336 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:27:11,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 04:27:11,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-08 04:27:11,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 04:27:11,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-08 04:27:11,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 143 transitions. [2022-04-08 04:27:11,568 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-08 04:27:11,578 INFO L225 Difference]: With dead ends: 321 [2022-04-08 04:27:11,578 INFO L226 Difference]: Without dead ends: 319 [2022-04-08 04:27:11,580 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 226 ImplicationChecksByTransitivity, 3.5s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-08 04:27:11,581 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 61 mSDsluCounter, 350 mSDsCounter, 0 mSdLazyCounter, 920 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 395 SdHoareTripleChecker+Invalid, 960 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 920 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2022-04-08 04:27:11,582 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 395 Invalid, 960 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 920 Invalid, 0 Unknown, 0 Unchecked, 2.4s Time] [2022-04-08 04:27:11,582 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2022-04-08 04:27:12,399 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 305. [2022-04-08 04:27:12,400 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:27:12,400 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-08 04:27:12,401 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-08 04:27:12,401 INFO L87 Difference]: Start difference. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-08 04:27:12,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:27:12,411 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-08 04:27:12,411 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-08 04:27:12,412 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:27:12,412 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:27:12,412 INFO L74 IsIncluded]: Start isIncluded. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-08 04:27:12,413 INFO L87 Difference]: Start difference. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-08 04:27:12,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:27:12,422 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-08 04:27:12,422 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-08 04:27:12,423 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:27:12,423 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:27:12,423 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:27:12,424 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:27:12,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-08 04:27:12,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 305 states to 305 states and 415 transitions. [2022-04-08 04:27:12,435 INFO L78 Accepts]: Start accepts. Automaton has 305 states and 415 transitions. Word has length 66 [2022-04-08 04:27:12,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:27:12,435 INFO L478 AbstractCegarLoop]: Abstraction has 305 states and 415 transitions. [2022-04-08 04:27:12,436 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 04:27:12,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 305 states and 415 transitions. [2022-04-08 04:27:13,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 415 edges. 415 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:27:13,432 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 415 transitions. [2022-04-08 04:27:13,433 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-08 04:27:13,433 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:27:13,433 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:27:13,449 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-08 04:27:13,633 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:27:13,634 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:27:13,634 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:27:13,634 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 1 times [2022-04-08 04:27:13,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:27:13,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [31694458] [2022-04-08 04:27:13,635 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:27:13,635 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 2 times [2022-04-08 04:27:13,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:27:13,635 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1565289748] [2022-04-08 04:27:13,635 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:27:13,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:27:13,645 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:27:13,645 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1675688581] [2022-04-08 04:27:13,645 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:27:13,645 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:27:13,645 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:27:13,646 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-08 04:27:13,659 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-08 04:27:13,697 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:27:13,697 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:27:13,698 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 62 conjunts are in the unsatisfiable core [2022-04-08 04:27:13,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:27:13,711 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:27:14,568 INFO L272 TraceCheckUtils]: 0: Hoare triple {19365#true} call ULTIMATE.init(); {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {19365#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); {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19365#true} {19365#true} #105#return; {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L272 TraceCheckUtils]: 4: Hoare triple {19365#true} call #t~ret6 := main(); {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {19365#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L272 TraceCheckUtils]: 6: Hoare triple {19365#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L290 TraceCheckUtils]: 7: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L290 TraceCheckUtils]: 8: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,568 INFO L290 TraceCheckUtils]: 9: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19365#true} {19365#true} #91#return; {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L272 TraceCheckUtils]: 11: Hoare triple {19365#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L290 TraceCheckUtils]: 12: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L290 TraceCheckUtils]: 13: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L290 TraceCheckUtils]: 14: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19365#true} {19365#true} #93#return; {19365#true} is VALID [2022-04-08 04:27:14,569 INFO L290 TraceCheckUtils]: 16: Hoare triple {19365#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,570 INFO L290 TraceCheckUtils]: 17: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,570 INFO L290 TraceCheckUtils]: 18: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {19425#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,570 INFO L290 TraceCheckUtils]: 19: Hoare triple {19425#(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_~p~0 1))} assume !false; {19425#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,571 INFO L290 TraceCheckUtils]: 20: Hoare triple {19425#(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_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {19432#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,571 INFO L290 TraceCheckUtils]: 21: Hoare triple {19432#(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_~p~0 1))} assume !false; {19432#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,571 INFO L272 TraceCheckUtils]: 22: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,571 INFO L290 TraceCheckUtils]: 23: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,571 INFO L290 TraceCheckUtils]: 24: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,572 INFO L290 TraceCheckUtils]: 25: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,572 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #95#return; {19432#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,572 INFO L272 TraceCheckUtils]: 27: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,572 INFO L290 TraceCheckUtils]: 28: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,573 INFO L290 TraceCheckUtils]: 29: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,573 INFO L290 TraceCheckUtils]: 30: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,573 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #97#return; {19432#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,573 INFO L272 TraceCheckUtils]: 32: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,574 INFO L290 TraceCheckUtils]: 33: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,574 INFO L290 TraceCheckUtils]: 34: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,574 INFO L290 TraceCheckUtils]: 35: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,574 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #99#return; {19432#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,574 INFO L272 TraceCheckUtils]: 37: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,575 INFO L290 TraceCheckUtils]: 38: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,575 INFO L290 TraceCheckUtils]: 39: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,575 INFO L290 TraceCheckUtils]: 40: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,575 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #101#return; {19432#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,576 INFO L290 TraceCheckUtils]: 42: Hoare triple {19432#(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_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {19499#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,576 INFO L290 TraceCheckUtils]: 43: Hoare triple {19499#(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_~p~0 1))} assume !false; {19499#(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_~p~0 1))} is VALID [2022-04-08 04:27:14,576 INFO L272 TraceCheckUtils]: 44: Hoare triple {19499#(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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,577 INFO L290 TraceCheckUtils]: 45: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:27:14,577 INFO L290 TraceCheckUtils]: 46: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:14,577 INFO L290 TraceCheckUtils]: 47: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:14,578 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19499#(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_~p~0 1))} #95#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,578 INFO L272 TraceCheckUtils]: 49: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~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)); {19365#true} is VALID [2022-04-08 04:27:14,579 INFO L290 TraceCheckUtils]: 50: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:27:14,579 INFO L290 TraceCheckUtils]: 51: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:14,579 INFO L290 TraceCheckUtils]: 52: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:14,580 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #97#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,580 INFO L272 TraceCheckUtils]: 54: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,580 INFO L290 TraceCheckUtils]: 55: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-08 04:27:14,580 INFO L290 TraceCheckUtils]: 56: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-08 04:27:14,580 INFO L290 TraceCheckUtils]: 57: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-08 04:27:14,581 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {19365#true} {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #99#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,581 INFO L272 TraceCheckUtils]: 59: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-08 04:27:14,581 INFO L290 TraceCheckUtils]: 60: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:27:14,582 INFO L290 TraceCheckUtils]: 61: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:14,582 INFO L290 TraceCheckUtils]: 62: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:27:14,583 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #101#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,583 INFO L290 TraceCheckUtils]: 64: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,584 INFO L290 TraceCheckUtils]: 65: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,584 INFO L290 TraceCheckUtils]: 66: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,585 INFO L290 TraceCheckUtils]: 67: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:27:14,585 INFO L290 TraceCheckUtils]: 68: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {19582#(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-08 04:27:14,586 INFO L290 TraceCheckUtils]: 69: Hoare triple {19582#(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; {19582#(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-08 04:27:14,586 INFO L290 TraceCheckUtils]: 70: Hoare triple {19582#(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); {19589#(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-08 04:27:14,587 INFO L272 TraceCheckUtils]: 71: Hoare triple {19589#(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)); {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:27:14,587 INFO L290 TraceCheckUtils]: 72: Hoare triple {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:27:14,588 INFO L290 TraceCheckUtils]: 73: Hoare triple {19597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19366#false} is VALID [2022-04-08 04:27:14,588 INFO L290 TraceCheckUtils]: 74: Hoare triple {19366#false} assume !false; {19366#false} is VALID [2022-04-08 04:27:14,588 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 52 proven. 19 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-08 04:27:14,588 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:27:49,045 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:27:51,643 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:28:12,755 WARN L232 SmtUtils]: Spent 16.09s on a formula simplification that was a NOOP. DAG size: 74 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-08 04:28:12,757 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:28:12,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1565289748] [2022-04-08 04:28:12,757 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:28:12,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1675688581] [2022-04-08 04:28:12,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1675688581] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 04:28:12,757 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 04:28:12,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-08 04:28:12,758 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:28:12,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [31694458] [2022-04-08 04:28:12,758 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [31694458] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:28:12,758 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:28:12,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 04:28:12,758 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [922918635] [2022-04-08 04:28:12,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:28:12,759 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 75 [2022-04-08 04:28:12,759 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:28:12,759 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 04:28:12,812 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-08 04:28:12,813 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 04:28:12,813 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:28:12,813 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 04:28:12,813 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=392, Unknown=1, NotChecked=0, Total=462 [2022-04-08 04:28:12,813 INFO L87 Difference]: Start difference. First operand 305 states and 415 transitions. Second operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 04:28:16,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:28:16,489 INFO L93 Difference]: Finished difference Result 388 states and 532 transitions. [2022-04-08 04:28:16,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 04:28:16,490 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 75 [2022-04-08 04:28:16,490 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:28:16,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 04:28:16,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-08 04:28:16,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 04:28:16,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-08 04:28:16,494 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 138 transitions. [2022-04-08 04:28:16,680 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:28:16,694 INFO L225 Difference]: With dead ends: 388 [2022-04-08 04:28:16,694 INFO L226 Difference]: Without dead ends: 385 [2022-04-08 04:28:16,694 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 18.9s TimeCoverageRelationStatistics Valid=100, Invalid=549, Unknown=1, NotChecked=0, Total=650 [2022-04-08 04:28:16,696 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 41 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 795 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 825 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 795 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-08 04:28:16,696 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 331 Invalid, 825 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 795 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-08 04:28:16,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 385 states. [2022-04-08 04:28:17,522 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 385 to 318. [2022-04-08 04:28:17,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:28:17,523 INFO L82 GeneralOperation]: Start isEquivalent. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 04:28:17,523 INFO L74 IsIncluded]: Start isIncluded. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 04:28:17,523 INFO L87 Difference]: Start difference. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 04:28:17,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:28:17,536 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-08 04:28:17,536 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-08 04:28:17,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:28:17,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:28:17,539 INFO L74 IsIncluded]: Start isIncluded. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-08 04:28:17,539 INFO L87 Difference]: Start difference. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-08 04:28:17,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:28:17,552 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-08 04:28:17,552 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-08 04:28:17,553 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:28:17,553 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:28:17,554 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:28:17,554 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:28:17,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 04:28:17,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 318 states to 318 states and 433 transitions. [2022-04-08 04:28:17,565 INFO L78 Accepts]: Start accepts. Automaton has 318 states and 433 transitions. Word has length 75 [2022-04-08 04:28:17,565 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:28:17,565 INFO L478 AbstractCegarLoop]: Abstraction has 318 states and 433 transitions. [2022-04-08 04:28:17,565 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 04:28:17,565 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 318 states and 433 transitions. [2022-04-08 04:28:18,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 433 edges. 433 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:28:18,547 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 433 transitions. [2022-04-08 04:28:18,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-08 04:28:18,549 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:28:18,560 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:28:18,577 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-08 04:28:18,767 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 04:28:18,768 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:28:18,768 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:28:18,768 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 3 times [2022-04-08 04:28:18,768 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:28:18,768 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [706080298] [2022-04-08 04:28:18,769 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:28:18,769 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 4 times [2022-04-08 04:28:18,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:28:18,769 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [208033387] [2022-04-08 04:28:18,769 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:28:18,769 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:28:18,780 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:28:18,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1909188935] [2022-04-08 04:28:18,780 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 04:28:18,780 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:28:18,780 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:28:18,781 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-08 04:28:18,782 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-08 04:28:18,827 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 04:28:18,827 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:28:18,828 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 83 conjunts are in the unsatisfiable core [2022-04-08 04:28:18,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:28:18,846 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:28:20,117 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-08 04:28:20,117 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#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); {21882#true} is VALID [2022-04-08 04:28:20,117 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,118 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-08 04:28:20,119 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21935#(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-08 04:28:20,119 INFO L290 TraceCheckUtils]: 17: Hoare triple {21935#(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; {21935#(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-08 04:28:20,120 INFO L290 TraceCheckUtils]: 18: Hoare triple {21935#(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; {21942#(and (= main_~r~0 0) (= 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-08 04:28:20,120 INFO L290 TraceCheckUtils]: 19: Hoare triple {21942#(and (= main_~r~0 0) (= 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; {21942#(and (= main_~r~0 0) (= 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-08 04:28:20,120 INFO L290 TraceCheckUtils]: 20: Hoare triple {21942#(and (= main_~r~0 0) (= 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); {21942#(and (= main_~r~0 0) (= 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-08 04:28:20,121 INFO L290 TraceCheckUtils]: 21: Hoare triple {21942#(and (= main_~r~0 0) (= 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; {21952#(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-08 04:28:20,121 INFO L290 TraceCheckUtils]: 22: Hoare triple {21952#(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; {21952#(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-08 04:28:20,122 INFO L290 TraceCheckUtils]: 23: Hoare triple {21952#(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; {21959#(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-08 04:28:20,122 INFO L290 TraceCheckUtils]: 24: Hoare triple {21959#(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; {21959#(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-08 04:28:20,122 INFO L290 TraceCheckUtils]: 25: Hoare triple {21959#(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; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 04:28:20,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 04:28:20,123 INFO L272 TraceCheckUtils]: 27: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,123 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:28:20,123 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:28:20,123 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,124 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #95#return; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 04:28:20,124 INFO L272 TraceCheckUtils]: 32: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,124 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:28:20,125 INFO L290 TraceCheckUtils]: 34: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,125 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,126 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #97#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 04:28:20,126 INFO L272 TraceCheckUtils]: 37: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,126 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:28:20,126 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:28:20,126 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,127 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #99#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 04:28:20,127 INFO L272 TraceCheckUtils]: 42: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,127 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:28:20,128 INFO L290 TraceCheckUtils]: 44: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,128 INFO L290 TraceCheckUtils]: 45: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,129 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #101#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 04:28:20,129 INFO L290 TraceCheckUtils]: 47: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {22036#(and (= main_~c~0 main_~a~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_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-08 04:28:20,130 INFO L290 TraceCheckUtils]: 48: Hoare triple {22036#(and (= main_~c~0 main_~a~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_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !false; {22036#(and (= main_~c~0 main_~a~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_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-08 04:28:20,130 INFO L272 TraceCheckUtils]: 49: Hoare triple {22036#(and (= main_~c~0 main_~a~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_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,130 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:28:20,130 INFO L290 TraceCheckUtils]: 51: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,131 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,132 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22036#(and (= main_~c~0 main_~a~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_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #95#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:28:20,132 INFO L272 TraceCheckUtils]: 54: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,132 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:28:20,132 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:28:20,132 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,133 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:28:20,133 INFO L272 TraceCheckUtils]: 59: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,133 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:28:20,133 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:28:20,133 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:28:20,134 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:28:20,134 INFO L272 TraceCheckUtils]: 64: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:28:20,134 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:28:20,134 INFO L290 TraceCheckUtils]: 66: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,135 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:28:20,135 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:28:20,136 INFO L290 TraceCheckUtils]: 69: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:28:20,137 INFO L290 TraceCheckUtils]: 70: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-08 04:28:20,137 INFO L290 TraceCheckUtils]: 71: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !false; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-08 04:28:20,138 INFO L290 TraceCheckUtils]: 72: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !(~c~0 >= ~b~0); {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-08 04:28:20,138 INFO L290 TraceCheckUtils]: 73: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~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; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 04:28:20,139 INFO L290 TraceCheckUtils]: 74: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 04:28:20,139 INFO L290 TraceCheckUtils]: 75: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 04:28:20,142 INFO L272 TraceCheckUtils]: 76: Hoare triple {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~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)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:28:20,142 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:28:20,142 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-08 04:28:20,142 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-08 04:28:20,143 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 39 proven. 44 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-04-08 04:28:20,143 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:29:09,913 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-08 04:29:09,913 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-08 04:29:09,914 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:29:09,914 INFO L272 TraceCheckUtils]: 76: Hoare triple {22148#(= (+ (* 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)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:29:09,915 INFO L290 TraceCheckUtils]: 75: Hoare triple {22152#(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); {22148#(= (+ (* 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-08 04:29:09,915 INFO L290 TraceCheckUtils]: 74: Hoare triple {22152#(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; {22152#(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-08 04:29:10,073 INFO L290 TraceCheckUtils]: 73: Hoare triple {22159#(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; {22152#(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-08 04:29:10,073 INFO L290 TraceCheckUtils]: 72: Hoare triple {22159#(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); {22159#(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-08 04:29:10,074 INFO L290 TraceCheckUtils]: 71: Hoare triple {22159#(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; {22159#(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-08 04:29:10,129 INFO L290 TraceCheckUtils]: 70: Hoare triple {22169#(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; {22159#(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-08 04:29:10,129 INFO L290 TraceCheckUtils]: 69: Hoare triple {22169#(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); {22169#(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-08 04:29:10,130 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #101#return; {22169#(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-08 04:29:10,131 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:29:10,131 INFO L290 TraceCheckUtils]: 66: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:29:10,131 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:29:10,131 INFO L272 TraceCheckUtils]: 64: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,132 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #99#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 04:29:10,132 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,132 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,133 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,133 INFO L272 TraceCheckUtils]: 59: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,133 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 04:29:10,133 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,134 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,134 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,134 INFO L272 TraceCheckUtils]: 54: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,135 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22223#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 04:29:10,135 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:29:10,135 INFO L290 TraceCheckUtils]: 51: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:29:10,136 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:29:10,136 INFO L272 TraceCheckUtils]: 49: Hoare triple {22223#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,136 INFO L290 TraceCheckUtils]: 48: Hoare triple {22223#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {22223#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 04:29:10,174 INFO L290 TraceCheckUtils]: 47: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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; {22223#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 04:29:10,175 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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))))} #101#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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-08 04:29:10,175 INFO L290 TraceCheckUtils]: 45: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,175 INFO L290 TraceCheckUtils]: 44: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,175 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,176 INFO L272 TraceCheckUtils]: 42: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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)); {21882#true} is VALID [2022-04-08 04:29:10,177 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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))))} #99#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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-08 04:29:10,177 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,177 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,177 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,177 INFO L272 TraceCheckUtils]: 37: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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)); {21882#true} is VALID [2022-04-08 04:29:10,178 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #97#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* 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-08 04:29:10,179 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:29:10,179 INFO L290 TraceCheckUtils]: 34: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:29:10,179 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:29:10,179 INFO L272 TraceCheckUtils]: 32: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,180 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #95#return; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 04:29:10,180 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,180 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,180 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,181 INFO L272 TraceCheckUtils]: 27: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,181 INFO L290 TraceCheckUtils]: 26: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 04:29:10,182 INFO L290 TraceCheckUtils]: 25: Hoare triple {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 04:29:10,183 INFO L290 TraceCheckUtils]: 24: Hoare triple {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 23: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 22: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 21: Hoare triple {21882#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; {21882#true} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 20: Hoare triple {21882#true} assume !(~c~0 >= ~b~0); {21882#true} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 19: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 18: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21882#true} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 17: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-08 04:29:10,184 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21882#true} is VALID [2022-04-08 04:29:10,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-08 04:29:10,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-08 04:29:10,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-08 04:29:10,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#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); {21882#true} is VALID [2022-04-08 04:29:10,186 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-08 04:29:10,186 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 49 proven. 29 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2022-04-08 04:29:10,187 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:29:10,187 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [208033387] [2022-04-08 04:29:10,187 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:29:10,187 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1909188935] [2022-04-08 04:29:10,187 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1909188935] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:29:10,187 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:29:10,187 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15] total 27 [2022-04-08 04:29:10,187 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:29:10,188 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [706080298] [2022-04-08 04:29:10,188 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [706080298] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:29:10,188 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:29:10,188 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 04:29:10,188 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [129263739] [2022-04-08 04:29:10,188 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:29:10,188 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-08 04:29:10,189 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:29:10,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 04:29:10,247 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-08 04:29:10,247 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 04:29:10,248 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:29:10,248 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 04:29:10,248 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=593, Unknown=0, NotChecked=0, Total=702 [2022-04-08 04:29:10,248 INFO L87 Difference]: Start difference. First operand 318 states and 433 transitions. Second operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 04:29:15,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:29:15,188 INFO L93 Difference]: Finished difference Result 406 states and 555 transitions. [2022-04-08 04:29:15,188 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 04:29:15,188 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-08 04:29:15,188 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:29:15,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 04:29:15,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-08 04:29:15,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 04:29:15,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-08 04:29:15,193 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 170 transitions. [2022-04-08 04:29:15,385 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 170 edges. 170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:29:15,398 INFO L225 Difference]: With dead ends: 406 [2022-04-08 04:29:15,399 INFO L226 Difference]: Without dead ends: 403 [2022-04-08 04:29:15,399 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 131 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 183 ImplicationChecksByTransitivity, 2.9s TimeCoverageRelationStatistics Valid=148, Invalid=844, Unknown=0, NotChecked=0, Total=992 [2022-04-08 04:29:15,400 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 69 mSDsluCounter, 325 mSDsCounter, 0 mSdLazyCounter, 1112 mSolverCounterSat, 77 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 90 SdHoareTripleChecker+Valid, 379 SdHoareTripleChecker+Invalid, 1189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 1112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-08 04:29:15,400 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [90 Valid, 379 Invalid, 1189 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 1112 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-08 04:29:15,400 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states. [2022-04-08 04:29:16,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 387. [2022-04-08 04:29:16,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:29:16,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-08 04:29:16,378 INFO L74 IsIncluded]: Start isIncluded. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-08 04:29:16,379 INFO L87 Difference]: Start difference. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-08 04:29:16,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:29:16,391 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-08 04:29:16,391 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-08 04:29:16,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:29:16,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:29:16,394 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-08 04:29:16,394 INFO L87 Difference]: Start difference. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-08 04:29:16,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:29:16,406 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-08 04:29:16,407 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-08 04:29:16,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:29:16,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:29:16,408 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:29:16,408 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:29:16,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-08 04:29:16,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 535 transitions. [2022-04-08 04:29:16,422 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 535 transitions. Word has length 80 [2022-04-08 04:29:16,422 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:29:16,422 INFO L478 AbstractCegarLoop]: Abstraction has 387 states and 535 transitions. [2022-04-08 04:29:16,423 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 04:29:16,423 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 387 states and 535 transitions. [2022-04-08 04:29:17,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 535 edges. 535 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:29:17,828 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 535 transitions. [2022-04-08 04:29:17,829 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-08 04:29:17,829 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:29:17,829 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:29:17,857 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-08 04:29:18,052 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 04:29:18,053 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:29:18,053 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:29:18,053 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 1 times [2022-04-08 04:29:18,053 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:29:18,053 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [188509197] [2022-04-08 04:29:18,054 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:29:18,054 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 2 times [2022-04-08 04:29:18,054 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:29:18,054 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1079147321] [2022-04-08 04:29:18,054 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:29:18,054 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:29:18,067 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:29:18,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1283810527] [2022-04-08 04:29:18,067 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:29:18,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:29:18,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:29:18,070 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-08 04:29:18,071 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-08 04:29:18,122 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:29:18,122 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:29:18,123 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 04:29:18,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:29:18,138 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:29:18,612 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#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); {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,613 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-08 04:29:18,614 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-08 04:29:18,615 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 04:29:18,615 INFO L290 TraceCheckUtils]: 19: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !false; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 04:29:18,615 INFO L290 TraceCheckUtils]: 20: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-08 04:29:18,616 INFO L290 TraceCheckUtils]: 21: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !false; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-08 04:29:18,616 INFO L272 TraceCheckUtils]: 22: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,616 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,616 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,616 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,619 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #95#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-08 04:29:18,619 INFO L272 TraceCheckUtils]: 27: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,619 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,619 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,619 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,620 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #97#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-08 04:29:18,620 INFO L272 TraceCheckUtils]: 32: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,620 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,620 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,620 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,621 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #99#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-08 04:29:18,621 INFO L272 TraceCheckUtils]: 37: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,621 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,621 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,621 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,622 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #101#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-08 04:29:18,622 INFO L290 TraceCheckUtils]: 42: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-08 04:29:18,622 INFO L290 TraceCheckUtils]: 43: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !false; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-08 04:29:18,623 INFO L272 TraceCheckUtils]: 44: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,623 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,623 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,623 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,624 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #95#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-08 04:29:18,624 INFO L272 TraceCheckUtils]: 49: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,624 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,624 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,624 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,625 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #97#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-08 04:29:18,625 INFO L272 TraceCheckUtils]: 54: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,625 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,625 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,625 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,625 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #99#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-08 04:29:18,626 INFO L272 TraceCheckUtils]: 59: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,626 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,626 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,626 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,626 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #101#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-08 04:29:18,627 INFO L290 TraceCheckUtils]: 64: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !(~c~0 >= 2 * ~v~0); {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 04:29:18,628 INFO L290 TraceCheckUtils]: 65: Hoare triple {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-08 04:29:18,628 INFO L290 TraceCheckUtils]: 66: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-08 04:29:18,629 INFO L290 TraceCheckUtils]: 67: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-08 04:29:18,629 INFO L290 TraceCheckUtils]: 68: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-08 04:29:18,629 INFO L272 TraceCheckUtils]: 69: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,629 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,630 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,630 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,630 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #95#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-08 04:29:18,630 INFO L272 TraceCheckUtils]: 74: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:29:18,631 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:29:18,631 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:29:18,631 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:29:18,631 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #97#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-08 04:29:18,632 INFO L272 TraceCheckUtils]: 79: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:29:18,632 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:29:18,633 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-08 04:29:18,633 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-08 04:29:18,633 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 04:29:18,633 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:30:02,132 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-08 04:30:02,133 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-08 04:30:02,134 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:30:02,134 INFO L272 TraceCheckUtils]: 79: Hoare triple {25058#(= 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)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:30:02,135 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:30:02,135 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,135 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,135 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,136 INFO L272 TraceCheckUtils]: 74: Hoare triple {25058#(= 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)); {24790#true} is VALID [2022-04-08 04:30:02,136 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:30:02,136 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,136 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,137 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,137 INFO L272 TraceCheckUtils]: 69: Hoare triple {25058#(= 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)); {24790#true} is VALID [2022-04-08 04:30:02,137 INFO L290 TraceCheckUtils]: 68: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:30:02,138 INFO L290 TraceCheckUtils]: 67: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 04:30:02,138 INFO L290 TraceCheckUtils]: 66: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 04:30:02,154 INFO L290 TraceCheckUtils]: 65: Hoare triple {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 04:30:02,154 INFO L290 TraceCheckUtils]: 64: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !(~c~0 >= 2 * ~v~0); {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} is VALID [2022-04-08 04:30:02,155 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #101#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-08 04:30:02,155 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,155 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,155 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,156 INFO L272 TraceCheckUtils]: 59: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,156 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #99#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-08 04:30:02,156 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,156 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,156 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,157 INFO L272 TraceCheckUtils]: 54: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,157 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #97#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-08 04:30:02,158 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,158 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,158 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,158 INFO L272 TraceCheckUtils]: 49: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,159 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #95#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-08 04:30:02,159 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,159 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,159 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,159 INFO L272 TraceCheckUtils]: 44: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,160 INFO L290 TraceCheckUtils]: 43: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !false; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-08 04:30:02,162 INFO L290 TraceCheckUtils]: 42: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-08 04:30:02,163 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #101#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-08 04:30:02,163 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,163 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,163 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,164 INFO L272 TraceCheckUtils]: 37: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,164 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #99#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-08 04:30:02,164 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,164 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,164 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,165 INFO L272 TraceCheckUtils]: 32: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,165 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #97#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-08 04:30:02,166 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,166 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,166 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,166 INFO L272 TraceCheckUtils]: 27: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,167 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #95#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-08 04:30:02,167 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,167 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,167 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,167 INFO L272 TraceCheckUtils]: 22: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,168 INFO L290 TraceCheckUtils]: 21: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !false; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-08 04:30:02,169 INFO L290 TraceCheckUtils]: 20: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-08 04:30:02,169 INFO L290 TraceCheckUtils]: 19: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !false; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-08 04:30:02,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-08 04:30:02,170 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-08 04:30:02,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-08 04:30:02,170 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-08 04:30:02,170 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,170 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-08 04:30:02,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-08 04:30:02,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#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); {24790#true} is VALID [2022-04-08 04:30:02,172 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-08 04:30:02,172 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 04:30:02,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:30:02,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1079147321] [2022-04-08 04:30:02,173 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:30:02,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1283810527] [2022-04-08 04:30:02,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1283810527] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:30:02,173 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:30:02,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2022-04-08 04:30:02,173 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:30:02,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [188509197] [2022-04-08 04:30:02,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [188509197] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:30:02,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:30:02,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 04:30:02,174 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2126696920] [2022-04-08 04:30:02,174 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:30:02,174 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-08 04:30:02,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:30:02,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 04:30:02,231 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-08 04:30:02,232 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 04:30:02,232 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:30:02,232 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 04:30:02,232 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2022-04-08 04:30:02,232 INFO L87 Difference]: Start difference. First operand 387 states and 535 transitions. Second operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 04:30:04,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:30:04,716 INFO L93 Difference]: Finished difference Result 540 states and 774 transitions. [2022-04-08 04:30:04,716 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 04:30:04,716 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-08 04:30:04,716 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:30:04,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 04:30:04,717 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-08 04:30:04,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 04:30:04,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-08 04:30:04,719 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 100 transitions. [2022-04-08 04:30:04,811 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:30:04,830 INFO L225 Difference]: With dead ends: 540 [2022-04-08 04:30:04,831 INFO L226 Difference]: Without dead ends: 538 [2022-04-08 04:30:04,831 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 166 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 73 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=69, Invalid=203, Unknown=0, NotChecked=0, Total=272 [2022-04-08 04:30:04,831 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 20 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 244 SdHoareTripleChecker+Invalid, 285 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 04:30:04,832 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 244 Invalid, 285 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 268 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 04:30:04,832 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 538 states. [2022-04-08 04:30:06,329 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 538 to 520. [2022-04-08 04:30:06,329 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:30:06,332 INFO L82 GeneralOperation]: Start isEquivalent. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-08 04:30:06,333 INFO L74 IsIncluded]: Start isIncluded. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-08 04:30:06,334 INFO L87 Difference]: Start difference. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-08 04:30:06,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:30:06,353 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-08 04:30:06,353 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-08 04:30:06,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:30:06,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:30:06,356 INFO L74 IsIncluded]: Start isIncluded. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-08 04:30:06,357 INFO L87 Difference]: Start difference. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-08 04:30:06,375 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:30:06,375 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-08 04:30:06,375 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-08 04:30:06,377 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:30:06,377 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:30:06,377 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:30:06,377 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:30:06,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-08 04:30:06,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 520 states to 520 states and 754 transitions. [2022-04-08 04:30:06,401 INFO L78 Accepts]: Start accepts. Automaton has 520 states and 754 transitions. Word has length 83 [2022-04-08 04:30:06,401 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:30:06,401 INFO L478 AbstractCegarLoop]: Abstraction has 520 states and 754 transitions. [2022-04-08 04:30:06,401 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 04:30:06,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 520 states and 754 transitions. [2022-04-08 04:30:08,392 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 754 edges. 754 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:30:08,393 INFO L276 IsEmpty]: Start isEmpty. Operand 520 states and 754 transitions. [2022-04-08 04:30:08,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 04:30:08,394 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:30:08,394 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 5, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:30:08,415 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-04-08 04:30:08,611 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 04:30:08,612 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:30:08,612 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:30:08,612 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 7 times [2022-04-08 04:30:08,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:30:08,612 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [458707838] [2022-04-08 04:30:08,612 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:30:08,612 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 8 times [2022-04-08 04:30:08,613 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:30:08,613 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [693938239] [2022-04-08 04:30:08,613 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:30:08,613 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:30:08,623 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:30:08,623 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1152950757] [2022-04-08 04:30:08,623 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:30:08,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:30:08,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:30:08,624 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 04:30:08,625 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-08 04:30:08,682 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:30:08,682 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:30:08,683 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 98 conjunts are in the unsatisfiable core [2022-04-08 04:30:08,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:30:08,710 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:30:21,656 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:32:07,018 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:32:13,077 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:32:15,644 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#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); {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:32:15,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:32:15,646 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:32:15,646 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,646 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-08 04:32:15,646 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:32:15,647 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:32:15,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:32:15,648 INFO L290 TraceCheckUtils]: 14: Hoare triple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:32:15,648 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} {28501#true} #93#return; {28553#(<= 1 main_~y~0)} is VALID [2022-04-08 04:32:15,649 INFO L290 TraceCheckUtils]: 16: Hoare triple {28553#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,649 INFO L290 TraceCheckUtils]: 17: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,650 INFO L290 TraceCheckUtils]: 18: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= 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; {28564#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,650 INFO L290 TraceCheckUtils]: 19: Hoare triple {28564#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28564#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,651 INFO L290 TraceCheckUtils]: 20: Hoare triple {28564#(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) (<= 1 main_~y~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; {28571#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,652 INFO L290 TraceCheckUtils]: 21: Hoare triple {28571#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28571#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,652 INFO L272 TraceCheckUtils]: 22: Hoare triple {28571#(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) (<= 1 main_~y~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)); {28501#true} is VALID [2022-04-08 04:32:15,652 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:32:15,652 INFO L290 TraceCheckUtils]: 24: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:15,653 INFO L290 TraceCheckUtils]: 25: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:15,654 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28571#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,654 INFO L272 TraceCheckUtils]: 27: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {28501#true} is VALID [2022-04-08 04:32:15,654 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:32:15,655 INFO L290 TraceCheckUtils]: 29: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:15,655 INFO L290 TraceCheckUtils]: 30: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:15,656 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,656 INFO L272 TraceCheckUtils]: 32: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {28501#true} is VALID [2022-04-08 04:32:15,656 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:32:15,656 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:32:15,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,657 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,657 INFO L272 TraceCheckUtils]: 37: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {28501#true} is VALID [2022-04-08 04:32:15,658 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:32:15,658 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:32:15,658 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,659 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,659 INFO L290 TraceCheckUtils]: 42: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {28641#(and (= main_~b~0 main_~v~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)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,660 INFO L290 TraceCheckUtils]: 43: Hoare triple {28641#(and (= main_~b~0 main_~v~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)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,661 INFO L290 TraceCheckUtils]: 44: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !false; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,661 INFO L290 TraceCheckUtils]: 45: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 04:32:15,676 INFO L290 TraceCheckUtils]: 46: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~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; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:32:15,678 INFO L290 TraceCheckUtils]: 47: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:32:15,679 INFO L290 TraceCheckUtils]: 48: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= 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; {28662#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:32:15,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {28662#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28662#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:32:15,682 INFO L290 TraceCheckUtils]: 50: Hoare triple {28662#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= 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; {28669#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:32:15,684 INFO L290 TraceCheckUtils]: 51: Hoare triple {28669#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28669#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-08 04:32:15,684 INFO L272 TraceCheckUtils]: 52: Hoare triple {28669#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= 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)); {28501#true} is VALID [2022-04-08 04:32:15,684 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:32:15,685 INFO L290 TraceCheckUtils]: 54: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:15,685 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:15,687 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28669#(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) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,687 INFO L272 TraceCheckUtils]: 57: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:32:15,687 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:32:15,687 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:32:15,687 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,688 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,688 INFO L272 TraceCheckUtils]: 62: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:32:15,689 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:32:15,689 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:32:15,689 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,690 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,690 INFO L272 TraceCheckUtils]: 67: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:32:15,690 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:32:15,690 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:32:15,690 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:32:15,691 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,692 INFO L290 TraceCheckUtils]: 72: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,693 INFO L290 TraceCheckUtils]: 73: Hoare triple {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~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; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,694 INFO L290 TraceCheckUtils]: 74: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:15,695 INFO L290 TraceCheckUtils]: 75: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:32:17,697 WARN L290 TraceCheckUtils]: 76: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is UNKNOWN [2022-04-08 04:32:17,698 INFO L290 TraceCheckUtils]: 77: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:17,699 INFO L290 TraceCheckUtils]: 78: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:17,700 INFO L290 TraceCheckUtils]: 79: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:17,700 INFO L290 TraceCheckUtils]: 80: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:17,701 INFO L290 TraceCheckUtils]: 81: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 04:32:17,701 INFO L272 TraceCheckUtils]: 82: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:32:17,702 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:32:17,702 INFO L290 TraceCheckUtils]: 84: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:17,702 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:32:17,740 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #95#return; {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} is VALID [2022-04-08 04:32:17,741 INFO L272 TraceCheckUtils]: 87: Hoare triple {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:32:17,741 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:32:17,741 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-08 04:32:17,742 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-08 04:32:17,742 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 38 proven. 83 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-08 04:32:17,742 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:33:02,735 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-08 04:33:02,736 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-08 04:33:02,736 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:33:02,737 INFO L272 TraceCheckUtils]: 87: Hoare triple {28806#(= 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)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:33:02,737 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #95#return; {28806#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:33:02,738 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:33:02,738 INFO L290 TraceCheckUtils]: 84: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:33:02,738 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:33:02,739 INFO L272 TraceCheckUtils]: 82: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,739 INFO L290 TraceCheckUtils]: 81: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:33:02,739 INFO L290 TraceCheckUtils]: 80: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:33:02,740 INFO L290 TraceCheckUtils]: 79: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:33:02,740 INFO L290 TraceCheckUtils]: 78: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:33:02,741 INFO L290 TraceCheckUtils]: 77: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:33:02,753 INFO L290 TraceCheckUtils]: 76: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:33:02,763 INFO L290 TraceCheckUtils]: 75: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,763 INFO L290 TraceCheckUtils]: 74: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,769 INFO L290 TraceCheckUtils]: 73: Hoare triple {28852#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,770 INFO L290 TraceCheckUtils]: 72: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {28852#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,771 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,771 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,771 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,774 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,774 INFO L272 TraceCheckUtils]: 67: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,775 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,775 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,775 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,775 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,775 INFO L272 TraceCheckUtils]: 62: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,776 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,776 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,776 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,776 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,776 INFO L272 TraceCheckUtils]: 57: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,777 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,777 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:33:02,778 INFO L290 TraceCheckUtils]: 54: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:33:02,778 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:33:02,778 INFO L272 TraceCheckUtils]: 52: Hoare triple {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,779 INFO L290 TraceCheckUtils]: 51: Hoare triple {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,779 INFO L290 TraceCheckUtils]: 50: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,780 INFO L290 TraceCheckUtils]: 49: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,781 INFO L290 TraceCheckUtils]: 48: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 47: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 46: Hoare triple {28501#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; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 45: Hoare triple {28501#true} assume !(~c~0 >= ~b~0); {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 44: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 43: Hoare triple {28501#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 42: Hoare triple {28501#true} assume !(~c~0 >= 2 * ~v~0); {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28501#true} #101#return; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L272 TraceCheckUtils]: 37: Hoare triple {28501#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28501#true} #99#return; {28501#true} is VALID [2022-04-08 04:33:02,782 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L272 TraceCheckUtils]: 32: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28501#true} {28501#true} #97#return; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 30: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 29: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L272 TraceCheckUtils]: 27: Hoare triple {28501#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28501#true} {28501#true} #95#return; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 25: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 24: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L272 TraceCheckUtils]: 22: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,783 INFO L290 TraceCheckUtils]: 21: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {28501#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 19: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 16: Hoare triple {28501#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28501#true} {28501#true} #93#return; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 14: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-08 04:33:02,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#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); {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-08 04:33:02,785 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2022-04-08 04:33:02,785 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:33:02,786 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [693938239] [2022-04-08 04:33:02,786 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:33:02,786 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1152950757] [2022-04-08 04:33:02,786 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1152950757] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:33:02,786 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:33:02,786 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 13] total 31 [2022-04-08 04:33:02,786 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:33:02,786 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [458707838] [2022-04-08 04:33:02,786 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [458707838] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:33:02,786 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:33:02,786 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-08 04:33:02,787 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [856726281] [2022-04-08 04:33:02,787 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:33:02,787 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-08 04:33:02,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:33:02,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-08 04:33:08,615 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 68 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 04:33:08,615 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-08 04:33:08,615 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:33:08,616 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-08 04:33:08,616 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=796, Unknown=0, NotChecked=0, Total=930 [2022-04-08 04:33:08,616 INFO L87 Difference]: Start difference. First operand 520 states and 754 transitions. Second operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-08 04:33:23,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:33:23,041 INFO L93 Difference]: Finished difference Result 606 states and 880 transitions. [2022-04-08 04:33:23,041 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-08 04:33:23,041 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-08 04:33:23,041 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:33:23,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-08 04:33:23,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-08 04:33:23,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-08 04:33:23,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-08 04:33:23,045 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 135 transitions. [2022-04-08 04:33:26,722 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 134 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 04:33:26,742 INFO L225 Difference]: With dead ends: 606 [2022-04-08 04:33:26,743 INFO L226 Difference]: Without dead ends: 604 [2022-04-08 04:33:26,743 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 150 SyntacticMatches, 2 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 364 ImplicationChecksByTransitivity, 5.2s TimeCoverageRelationStatistics Valid=177, Invalid=1155, Unknown=0, NotChecked=0, Total=1332 [2022-04-08 04:33:26,744 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 69 mSDsluCounter, 390 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 433 SdHoareTripleChecker+Invalid, 1127 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 412 IncrementalHoareTripleChecker+Unchecked, 4.9s IncrementalHoareTripleChecker+Time [2022-04-08 04:33:26,744 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [86 Valid, 433 Invalid, 1127 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 679 Invalid, 0 Unknown, 412 Unchecked, 4.9s Time] [2022-04-08 04:33:26,744 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 604 states. [2022-04-08 04:33:28,478 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 604 to 595. [2022-04-08 04:33:28,478 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:33:28,479 INFO L82 GeneralOperation]: Start isEquivalent. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-08 04:33:28,480 INFO L74 IsIncluded]: Start isIncluded. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-08 04:33:28,481 INFO L87 Difference]: Start difference. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-08 04:33:28,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:33:28,503 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-08 04:33:28,503 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-08 04:33:28,505 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:33:28,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:33:28,507 INFO L74 IsIncluded]: Start isIncluded. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-08 04:33:28,507 INFO L87 Difference]: Start difference. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-08 04:33:28,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:33:28,531 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-08 04:33:28,531 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-08 04:33:28,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:33:28,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:33:28,533 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:33:28,533 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:33:28,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-08 04:33:28,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 595 states to 595 states and 869 transitions. [2022-04-08 04:33:28,563 INFO L78 Accepts]: Start accepts. Automaton has 595 states and 869 transitions. Word has length 91 [2022-04-08 04:33:28,564 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:33:28,564 INFO L478 AbstractCegarLoop]: Abstraction has 595 states and 869 transitions. [2022-04-08 04:33:28,564 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-08 04:33:28,564 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 595 states and 869 transitions. [2022-04-08 04:33:30,946 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 869 edges. 869 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:33:30,946 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 869 transitions. [2022-04-08 04:33:30,947 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-08 04:33:30,947 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:33:30,947 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:33:30,964 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-08 04:33:31,148 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:33:31,148 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:33:31,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:33:31,148 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 5 times [2022-04-08 04:33:31,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:33:31,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2066059431] [2022-04-08 04:33:31,149 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:33:31,149 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 6 times [2022-04-08 04:33:31,149 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:33:31,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1572808581] [2022-04-08 04:33:31,149 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:33:31,150 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:33:31,158 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:33:31,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [305747325] [2022-04-08 04:33:31,158 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 04:33:31,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:33:31,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:33:31,159 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 04:33:31,160 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-08 04:33:31,219 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 04:33:31,219 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:33:31,220 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-08 04:33:31,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:33:31,240 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:34:00,686 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:34:08,841 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:34:08,957 INFO L272 TraceCheckUtils]: 0: Hoare triple {32699#true} call ULTIMATE.init(); {32699#true} is VALID [2022-04-08 04:34:08,957 INFO L290 TraceCheckUtils]: 1: Hoare triple {32699#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); {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32699#true} {32699#true} #105#return; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L272 TraceCheckUtils]: 4: Hoare triple {32699#true} call #t~ret6 := main(); {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 5: Hoare triple {32699#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L272 TraceCheckUtils]: 6: Hoare triple {32699#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32699#true} {32699#true} #91#return; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L272 TraceCheckUtils]: 11: Hoare triple {32699#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 12: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 13: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L290 TraceCheckUtils]: 14: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,958 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32699#true} {32699#true} #93#return; {32699#true} is VALID [2022-04-08 04:34:08,959 INFO L290 TraceCheckUtils]: 16: Hoare triple {32699#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {32752#(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-08 04:34:08,959 INFO L290 TraceCheckUtils]: 17: Hoare triple {32752#(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; {32752#(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-08 04:34:08,960 INFO L290 TraceCheckUtils]: 18: Hoare triple {32752#(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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,960 INFO L290 TraceCheckUtils]: 19: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,960 INFO L290 TraceCheckUtils]: 20: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,961 INFO L290 TraceCheckUtils]: 21: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,961 INFO L272 TraceCheckUtils]: 22: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,961 INFO L290 TraceCheckUtils]: 23: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,961 INFO L290 TraceCheckUtils]: 24: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,961 INFO L290 TraceCheckUtils]: 25: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,962 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,962 INFO L272 TraceCheckUtils]: 27: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,963 INFO L290 TraceCheckUtils]: 28: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:08,963 INFO L290 TraceCheckUtils]: 29: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:08,963 INFO L290 TraceCheckUtils]: 30: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:08,964 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,964 INFO L272 TraceCheckUtils]: 32: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,964 INFO L290 TraceCheckUtils]: 33: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,964 INFO L290 TraceCheckUtils]: 34: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,965 INFO L290 TraceCheckUtils]: 35: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,965 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,965 INFO L272 TraceCheckUtils]: 37: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,965 INFO L290 TraceCheckUtils]: 38: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,965 INFO L290 TraceCheckUtils]: 39: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,966 INFO L290 TraceCheckUtils]: 40: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,966 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,967 INFO L290 TraceCheckUtils]: 42: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,967 INFO L290 TraceCheckUtils]: 43: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,967 INFO L272 TraceCheckUtils]: 44: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,967 INFO L290 TraceCheckUtils]: 45: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,967 INFO L290 TraceCheckUtils]: 46: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,967 INFO L290 TraceCheckUtils]: 47: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,968 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,968 INFO L272 TraceCheckUtils]: 49: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,968 INFO L290 TraceCheckUtils]: 50: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,968 INFO L290 TraceCheckUtils]: 51: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,968 INFO L290 TraceCheckUtils]: 52: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,969 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,969 INFO L272 TraceCheckUtils]: 54: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,969 INFO L290 TraceCheckUtils]: 55: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,969 INFO L290 TraceCheckUtils]: 56: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,969 INFO L290 TraceCheckUtils]: 57: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,970 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,970 INFO L272 TraceCheckUtils]: 59: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,970 INFO L290 TraceCheckUtils]: 60: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,970 INFO L290 TraceCheckUtils]: 61: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,970 INFO L290 TraceCheckUtils]: 62: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,971 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,971 INFO L290 TraceCheckUtils]: 64: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,972 INFO L290 TraceCheckUtils]: 65: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,972 INFO L272 TraceCheckUtils]: 66: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,972 INFO L290 TraceCheckUtils]: 67: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,972 INFO L290 TraceCheckUtils]: 68: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,972 INFO L290 TraceCheckUtils]: 69: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,973 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,973 INFO L272 TraceCheckUtils]: 71: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,973 INFO L290 TraceCheckUtils]: 72: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,973 INFO L290 TraceCheckUtils]: 73: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,973 INFO L290 TraceCheckUtils]: 74: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,974 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,974 INFO L272 TraceCheckUtils]: 76: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,974 INFO L290 TraceCheckUtils]: 77: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-08 04:34:08,974 INFO L290 TraceCheckUtils]: 78: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-08 04:34:08,974 INFO L290 TraceCheckUtils]: 79: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-08 04:34:08,975 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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-08 04:34:08,975 INFO L272 TraceCheckUtils]: 81: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= 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)); {32699#true} is VALID [2022-04-08 04:34:08,975 INFO L290 TraceCheckUtils]: 82: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:08,975 INFO L290 TraceCheckUtils]: 83: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:08,975 INFO L290 TraceCheckUtils]: 84: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:08,976 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32963#(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-08 04:34:08,977 INFO L290 TraceCheckUtils]: 86: Hoare triple {32963#(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); {32963#(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-08 04:34:08,979 INFO L290 TraceCheckUtils]: 87: Hoare triple {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:08,980 INFO L290 TraceCheckUtils]: 88: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:08,980 INFO L290 TraceCheckUtils]: 89: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:08,981 INFO L290 TraceCheckUtils]: 90: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {32980#(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 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-08 04:34:08,981 INFO L290 TraceCheckUtils]: 91: Hoare triple {32980#(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 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !false; {32980#(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 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-08 04:34:08,982 INFO L290 TraceCheckUtils]: 92: Hoare triple {32980#(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 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !(0 != ~b~0); {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} is VALID [2022-04-08 04:34:08,983 INFO L272 TraceCheckUtils]: 93: Hoare triple {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:34:08,983 INFO L290 TraceCheckUtils]: 94: Hoare triple {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {32995#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:08,983 INFO L290 TraceCheckUtils]: 95: Hoare triple {32995#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {32700#false} is VALID [2022-04-08 04:34:08,983 INFO L290 TraceCheckUtils]: 96: Hoare triple {32700#false} assume !false; {32700#false} is VALID [2022-04-08 04:34:08,984 INFO L134 CoverageAnalysis]: Checked inductivity of 314 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 04:34:08,984 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:34:27,325 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:34:28,027 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:34:28,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1572808581] [2022-04-08 04:34:28,027 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:34:28,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [305747325] [2022-04-08 04:34:28,028 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [305747325] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 04:34:28,028 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 04:34:28,028 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-08 04:34:28,028 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:34:28,028 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2066059431] [2022-04-08 04:34:28,028 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2066059431] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:34:28,028 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:34:28,028 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 04:34:28,028 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2026963909] [2022-04-08 04:34:28,028 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:34:28,029 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 97 [2022-04-08 04:34:28,029 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:34:28,029 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 04:34:28,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:34:28,080 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 04:34:28,080 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:34:28,081 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 04:34:28,081 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-08 04:34:28,081 INFO L87 Difference]: Start difference. First operand 595 states and 869 transitions. Second operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 04:34:31,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:34:31,588 INFO L93 Difference]: Finished difference Result 686 states and 997 transitions. [2022-04-08 04:34:31,588 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 04:34:31,588 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 97 [2022-04-08 04:34:31,588 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:34:31,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 04:34:31,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-08 04:34:31,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 04:34:31,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-08 04:34:31,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 109 transitions. [2022-04-08 04:34:31,723 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:34:31,752 INFO L225 Difference]: With dead ends: 686 [2022-04-08 04:34:31,752 INFO L226 Difference]: Without dead ends: 683 [2022-04-08 04:34:31,753 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 92 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-08 04:34:31,753 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 43 mSDsluCounter, 211 mSDsCounter, 0 mSdLazyCounter, 453 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 247 SdHoareTripleChecker+Invalid, 488 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 453 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 04:34:31,753 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 247 Invalid, 488 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 453 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-08 04:34:31,754 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 683 states. [2022-04-08 04:34:33,740 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 683 to 675. [2022-04-08 04:34:33,740 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:34:33,741 INFO L82 GeneralOperation]: Start isEquivalent. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-08 04:34:33,742 INFO L74 IsIncluded]: Start isIncluded. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-08 04:34:33,743 INFO L87 Difference]: Start difference. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-08 04:34:33,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:34:33,769 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-08 04:34:33,769 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-08 04:34:33,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:34:33,771 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:34:33,773 INFO L74 IsIncluded]: Start isIncluded. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-08 04:34:33,773 INFO L87 Difference]: Start difference. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-08 04:34:33,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:34:33,800 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-08 04:34:33,800 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-08 04:34:33,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:34:33,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:34:33,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:34:33,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:34:33,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-08 04:34:33,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 675 states to 675 states and 985 transitions. [2022-04-08 04:34:33,828 INFO L78 Accepts]: Start accepts. Automaton has 675 states and 985 transitions. Word has length 97 [2022-04-08 04:34:33,829 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:34:33,829 INFO L478 AbstractCegarLoop]: Abstraction has 675 states and 985 transitions. [2022-04-08 04:34:33,829 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 04:34:33,829 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 675 states and 985 transitions. [2022-04-08 04:34:36,601 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 985 edges. 985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:34:36,602 INFO L276 IsEmpty]: Start isEmpty. Operand 675 states and 985 transitions. [2022-04-08 04:34:36,603 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-04-08 04:34:36,603 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:34:36,603 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:34:36,626 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-08 04:34:36,803 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:34:36,804 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:34:36,804 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:34:36,804 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 9 times [2022-04-08 04:34:36,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:34:36,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1845745287] [2022-04-08 04:34:36,805 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:34:36,805 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 10 times [2022-04-08 04:34:36,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:34:36,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1786015803] [2022-04-08 04:34:36,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:34:36,805 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:34:36,814 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:34:36,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1382382013] [2022-04-08 04:34:36,814 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 04:34:36,815 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:34:36,815 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:34:36,816 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 04:34:36,819 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-08 04:34:36,879 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 04:34:36,879 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:34:36,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-08 04:34:36,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:34:36,898 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:34:40,035 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-08 04:34:40,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#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); {37142#true} is VALID [2022-04-08 04:34:40,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-08 04:34:40,035 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-08 04:34:40,035 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {37142#true} is VALID [2022-04-08 04:34:40,035 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,043 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 04:34:40,044 INFO L290 TraceCheckUtils]: 8: Hoare triple {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:34:40,044 INFO L290 TraceCheckUtils]: 9: Hoare triple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 04:34:40,044 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} {37142#true} #91#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-08 04:34:40,045 INFO L272 TraceCheckUtils]: 11: Hoare triple {37179#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,045 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,045 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,045 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37179#(<= 1 main_~x~0)} #93#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-08 04:34:40,046 INFO L290 TraceCheckUtils]: 16: Hoare triple {37179#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,046 INFO L290 TraceCheckUtils]: 17: Hoare triple {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,047 INFO L290 TraceCheckUtils]: 18: Hoare triple {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,047 INFO L290 TraceCheckUtils]: 19: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,048 INFO L290 TraceCheckUtils]: 20: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,049 INFO L290 TraceCheckUtils]: 21: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= 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; {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 04:34:40,049 INFO L290 TraceCheckUtils]: 22: Hoare triple {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 04:34:40,050 INFO L290 TraceCheckUtils]: 23: Hoare triple {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 04:34:40,050 INFO L290 TraceCheckUtils]: 24: Hoare triple {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 04:34:40,051 INFO L290 TraceCheckUtils]: 25: Hoare triple {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-08 04:34:40,051 INFO L290 TraceCheckUtils]: 26: Hoare triple {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !false; {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-08 04:34:40,051 INFO L272 TraceCheckUtils]: 27: Hoare triple {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,052 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:40,052 INFO L290 TraceCheckUtils]: 29: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:40,052 INFO L290 TraceCheckUtils]: 30: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:40,054 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #95#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,054 INFO L272 TraceCheckUtils]: 32: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 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)); {37142#true} is VALID [2022-04-08 04:34:40,054 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,054 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,054 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,055 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,055 INFO L272 TraceCheckUtils]: 37: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,055 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,055 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,056 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,056 INFO L272 TraceCheckUtils]: 42: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,056 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,057 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,057 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,057 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,058 INFO L290 TraceCheckUtils]: 47: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,058 INFO L290 TraceCheckUtils]: 48: Hoare triple {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~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; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,059 INFO L290 TraceCheckUtils]: 49: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,059 INFO L290 TraceCheckUtils]: 50: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 04:34:40,061 INFO L290 TraceCheckUtils]: 51: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,062 INFO L290 TraceCheckUtils]: 52: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,063 INFO L290 TraceCheckUtils]: 53: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,063 INFO L290 TraceCheckUtils]: 54: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,064 INFO L290 TraceCheckUtils]: 55: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,065 INFO L290 TraceCheckUtils]: 56: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} assume !false; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,065 INFO L272 TraceCheckUtils]: 57: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,065 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:40,065 INFO L290 TraceCheckUtils]: 59: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:40,065 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:40,067 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} #95#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,067 INFO L272 TraceCheckUtils]: 62: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~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)); {37142#true} is VALID [2022-04-08 04:34:40,067 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,067 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,067 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,068 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #97#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,068 INFO L272 TraceCheckUtils]: 67: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,068 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,068 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,068 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,069 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #99#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,069 INFO L272 TraceCheckUtils]: 72: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,069 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:34:40,069 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:34:40,070 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:34:40,070 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #101#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,071 INFO L290 TraceCheckUtils]: 77: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,072 INFO L290 TraceCheckUtils]: 78: Hoare triple {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,072 INFO L290 TraceCheckUtils]: 79: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !false; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,073 INFO L290 TraceCheckUtils]: 80: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:34:40,075 INFO L290 TraceCheckUtils]: 81: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ 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; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-08 04:34:40,076 INFO L290 TraceCheckUtils]: 82: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-08 04:34:40,076 INFO L290 TraceCheckUtils]: 83: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-08 04:34:40,077 INFO L290 TraceCheckUtils]: 84: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-08 04:34:40,078 INFO L290 TraceCheckUtils]: 85: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-08 04:34:40,078 INFO L290 TraceCheckUtils]: 86: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-08 04:34:40,078 INFO L272 TraceCheckUtils]: 87: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:34:40,078 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:40,079 INFO L290 TraceCheckUtils]: 89: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:40,079 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:34:40,081 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} #95#return; {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 04:34:40,082 INFO L272 TraceCheckUtils]: 92: Hoare triple {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:34:40,082 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:34:40,082 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-08 04:34:40,083 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-08 04:34:40,083 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 42 proven. 91 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-08 04:34:40,083 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 04:35:24,429 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-08 04:35:24,430 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-08 04:35:24,430 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:35:24,431 INFO L272 TraceCheckUtils]: 92: Hoare triple {37464#(= 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)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:35:24,432 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #95#return; {37464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 04:35:24,432 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:35:24,432 INFO L290 TraceCheckUtils]: 89: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:35:24,433 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:35:24,433 INFO L272 TraceCheckUtils]: 87: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,433 INFO L290 TraceCheckUtils]: 86: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:35:24,433 INFO L290 TraceCheckUtils]: 85: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:35:24,434 INFO L290 TraceCheckUtils]: 84: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:35:24,434 INFO L290 TraceCheckUtils]: 83: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:35:24,435 INFO L290 TraceCheckUtils]: 82: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:35:24,452 INFO L290 TraceCheckUtils]: 81: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 04:35:24,452 INFO L290 TraceCheckUtils]: 80: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,452 INFO L290 TraceCheckUtils]: 79: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,457 INFO L290 TraceCheckUtils]: 78: Hoare triple {37510#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,458 INFO L290 TraceCheckUtils]: 77: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {37510#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,459 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,459 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,459 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,459 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,459 INFO L272 TraceCheckUtils]: 72: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,460 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,460 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,460 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,460 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,460 INFO L272 TraceCheckUtils]: 67: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,461 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,461 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,461 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,461 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,461 INFO L272 TraceCheckUtils]: 62: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,462 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,462 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:35:24,463 INFO L290 TraceCheckUtils]: 59: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:35:24,463 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 04:35:24,463 INFO L272 TraceCheckUtils]: 57: Hoare triple {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,463 INFO L290 TraceCheckUtils]: 56: Hoare triple {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,464 INFO L290 TraceCheckUtils]: 55: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,465 INFO L290 TraceCheckUtils]: 54: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,466 INFO L290 TraceCheckUtils]: 53: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 04:35:24,466 INFO L290 TraceCheckUtils]: 52: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 51: Hoare triple {37142#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; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 50: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 49: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 48: Hoare triple {37142#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 47: Hoare triple {37142#true} assume !(~c~0 >= 2 * ~v~0); {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37142#true} #101#return; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L272 TraceCheckUtils]: 42: Hoare triple {37142#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,467 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37142#true} #99#return; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L272 TraceCheckUtils]: 37: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37142#true} #97#return; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L272 TraceCheckUtils]: 32: Hoare triple {37142#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37142#true} {37142#true} #95#return; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 30: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L272 TraceCheckUtils]: 27: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 26: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {37142#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 23: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 22: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 21: Hoare triple {37142#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; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 20: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 19: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 18: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 17: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 16: Hoare triple {37142#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37142#true} #93#return; {37142#true} is VALID [2022-04-08 04:35:24,469 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L272 TraceCheckUtils]: 11: Hoare triple {37142#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37142#true} {37142#true} #91#return; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 9: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 8: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#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); {37142#true} is VALID [2022-04-08 04:35:24,470 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-08 04:35:24,471 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 87 proven. 18 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-08 04:35:24,471 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 04:35:24,471 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1786015803] [2022-04-08 04:35:24,471 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 04:35:24,471 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1382382013] [2022-04-08 04:35:24,471 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1382382013] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 04:35:24,471 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 04:35:24,471 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 13] total 33 [2022-04-08 04:35:24,472 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 04:35:24,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1845745287] [2022-04-08 04:35:24,472 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1845745287] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 04:35:24,472 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 04:35:24,472 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-08 04:35:24,472 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1284898052] [2022-04-08 04:35:24,472 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 04:35:24,472 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-08 04:35:24,472 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 04:35:24,473 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-08 04:35:24,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:35:24,557 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-08 04:35:24,557 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 04:35:24,558 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-08 04:35:24,558 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=885, Unknown=0, NotChecked=0, Total=1056 [2022-04-08 04:35:24,558 INFO L87 Difference]: Start difference. First operand 675 states and 985 transitions. Second operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-08 04:35:33,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:35:33,409 INFO L93 Difference]: Finished difference Result 767 states and 1110 transitions. [2022-04-08 04:35:33,409 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-08 04:35:33,409 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-08 04:35:33,409 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 04:35:33,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-08 04:35:33,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-08 04:35:33,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-08 04:35:33,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-08 04:35:33,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 190 transitions. [2022-04-08 04:35:33,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:35:33,709 INFO L225 Difference]: With dead ends: 767 [2022-04-08 04:35:33,709 INFO L226 Difference]: Without dead ends: 765 [2022-04-08 04:35:33,709 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 199 GetRequests, 159 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 424 ImplicationChecksByTransitivity, 1.8s TimeCoverageRelationStatistics Valid=245, Invalid=1395, Unknown=0, NotChecked=0, Total=1640 [2022-04-08 04:35:33,710 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 105 mSDsluCounter, 417 mSDsCounter, 0 mSdLazyCounter, 1605 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 464 SdHoareTripleChecker+Invalid, 1697 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 92 IncrementalHoareTripleChecker+Valid, 1605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.8s IncrementalHoareTripleChecker+Time [2022-04-08 04:35:33,710 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [141 Valid, 464 Invalid, 1697 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 1605 Invalid, 0 Unknown, 0 Unchecked, 2.8s Time] [2022-04-08 04:35:33,711 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 765 states. [2022-04-08 04:35:36,146 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 765 to 747. [2022-04-08 04:35:36,146 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 04:35:36,147 INFO L82 GeneralOperation]: Start isEquivalent. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-08 04:35:36,148 INFO L74 IsIncluded]: Start isIncluded. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-08 04:35:36,148 INFO L87 Difference]: Start difference. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-08 04:35:36,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:35:36,171 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-08 04:35:36,171 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-08 04:35:36,173 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:35:36,173 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:35:36,174 INFO L74 IsIncluded]: Start isIncluded. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-08 04:35:36,175 INFO L87 Difference]: Start difference. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-08 04:35:36,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 04:35:36,214 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-08 04:35:36,214 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-08 04:35:36,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 04:35:36,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 04:35:36,216 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 04:35:36,216 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 04:35:36,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-08 04:35:36,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 747 states to 747 states and 1090 transitions. [2022-04-08 04:35:36,246 INFO L78 Accepts]: Start accepts. Automaton has 747 states and 1090 transitions. Word has length 96 [2022-04-08 04:35:36,246 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 04:35:36,246 INFO L478 AbstractCegarLoop]: Abstraction has 747 states and 1090 transitions. [2022-04-08 04:35:36,246 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-08 04:35:36,246 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 747 states and 1090 transitions. [2022-04-08 04:35:39,323 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1090 edges. 1090 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 04:35:39,323 INFO L276 IsEmpty]: Start isEmpty. Operand 747 states and 1090 transitions. [2022-04-08 04:35:39,324 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-08 04:35:39,324 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 04:35:39,324 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 04:35:39,340 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 04:35:39,524 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-08 04:35:39,525 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 04:35:39,525 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 04:35:39,525 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 7 times [2022-04-08 04:35:39,525 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 04:35:39,525 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1504668670] [2022-04-08 04:35:39,526 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 04:35:39,526 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 8 times [2022-04-08 04:35:39,526 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 04:35:39,526 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [66294512] [2022-04-08 04:35:39,526 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 04:35:39,526 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 04:35:39,539 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 04:35:39,539 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1564983414] [2022-04-08 04:35:39,539 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 04:35:39,540 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 04:35:39,540 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 04:35:39,541 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 04:35:39,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 04:35:39,610 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 04:35:39,611 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 04:35:39,616 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 77 conjunts are in the unsatisfiable core [2022-04-08 04:35:39,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 04:35:39,643 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 04:36:06,696 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 04:36:07,122 INFO L272 TraceCheckUtils]: 0: Hoare triple {42324#true} call ULTIMATE.init(); {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L290 TraceCheckUtils]: 1: Hoare triple {42324#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); {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L290 TraceCheckUtils]: 2: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42324#true} {42324#true} #105#return; {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L272 TraceCheckUtils]: 4: Hoare triple {42324#true} call #t~ret6 := main(); {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L290 TraceCheckUtils]: 5: Hoare triple {42324#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L272 TraceCheckUtils]: 6: Hoare triple {42324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L290 TraceCheckUtils]: 7: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,122 INFO L290 TraceCheckUtils]: 8: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L290 TraceCheckUtils]: 9: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42324#true} {42324#true} #91#return; {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L272 TraceCheckUtils]: 11: Hoare triple {42324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L290 TraceCheckUtils]: 12: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L290 TraceCheckUtils]: 13: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L290 TraceCheckUtils]: 14: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {42324#true} {42324#true} #93#return; {42324#true} is VALID [2022-04-08 04:36:07,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {42324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {42377#(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-08 04:36:07,124 INFO L290 TraceCheckUtils]: 17: Hoare triple {42377#(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; {42377#(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-08 04:36:07,124 INFO L290 TraceCheckUtils]: 18: Hoare triple {42377#(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; {42384#(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-08 04:36:07,125 INFO L290 TraceCheckUtils]: 19: Hoare triple {42384#(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; {42384#(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-08 04:36:07,125 INFO L290 TraceCheckUtils]: 20: Hoare triple {42384#(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; {42391#(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-08 04:36:07,125 INFO L290 TraceCheckUtils]: 21: Hoare triple {42391#(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; {42391#(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-08 04:36:07,126 INFO L272 TraceCheckUtils]: 22: Hoare triple {42391#(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)); {42324#true} is VALID [2022-04-08 04:36:07,126 INFO L290 TraceCheckUtils]: 23: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:36:07,126 INFO L290 TraceCheckUtils]: 24: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,127 INFO L290 TraceCheckUtils]: 25: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,128 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42391#(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))} #95#return; {42412#(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-08 04:36:07,128 INFO L272 TraceCheckUtils]: 27: Hoare triple {42412#(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)); {42324#true} is VALID [2022-04-08 04:36:07,128 INFO L290 TraceCheckUtils]: 28: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,128 INFO L290 TraceCheckUtils]: 29: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,128 INFO L290 TraceCheckUtils]: 30: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,129 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {42324#true} {42412#(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))} #97#return; {42412#(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-08 04:36:07,130 INFO L272 TraceCheckUtils]: 32: Hoare triple {42412#(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)); {42324#true} is VALID [2022-04-08 04:36:07,130 INFO L290 TraceCheckUtils]: 33: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,130 INFO L290 TraceCheckUtils]: 34: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,130 INFO L290 TraceCheckUtils]: 35: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,131 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {42324#true} {42412#(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))} #99#return; {42412#(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-08 04:36:07,131 INFO L272 TraceCheckUtils]: 37: Hoare triple {42412#(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)); {42324#true} is VALID [2022-04-08 04:36:07,131 INFO L290 TraceCheckUtils]: 38: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,131 INFO L290 TraceCheckUtils]: 39: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,131 INFO L290 TraceCheckUtils]: 40: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,132 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {42324#true} {42412#(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))} #101#return; {42412#(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-08 04:36:07,134 INFO L290 TraceCheckUtils]: 42: Hoare triple {42412#(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);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,135 INFO L290 TraceCheckUtils]: 43: Hoare triple {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,135 INFO L272 TraceCheckUtils]: 44: Hoare triple {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,135 INFO L290 TraceCheckUtils]: 45: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,135 INFO L290 TraceCheckUtils]: 46: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,135 INFO L290 TraceCheckUtils]: 47: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,136 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {42324#true} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,137 INFO L272 TraceCheckUtils]: 49: Hoare triple {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,137 INFO L290 TraceCheckUtils]: 50: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:36:07,137 INFO L290 TraceCheckUtils]: 51: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,138 INFO L290 TraceCheckUtils]: 52: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,139 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,139 INFO L272 TraceCheckUtils]: 54: Hoare triple {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,139 INFO L290 TraceCheckUtils]: 55: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,140 INFO L290 TraceCheckUtils]: 56: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,140 INFO L290 TraceCheckUtils]: 57: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,140 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {42324#true} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,140 INFO L272 TraceCheckUtils]: 59: Hoare triple {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,141 INFO L290 TraceCheckUtils]: 60: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:36:07,141 INFO L290 TraceCheckUtils]: 61: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,141 INFO L290 TraceCheckUtils]: 62: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,142 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,143 INFO L290 TraceCheckUtils]: 64: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,146 INFO L290 TraceCheckUtils]: 65: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,146 INFO L290 TraceCheckUtils]: 66: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,147 INFO L290 TraceCheckUtils]: 67: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~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);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,147 INFO L290 TraceCheckUtils]: 68: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,147 INFO L272 TraceCheckUtils]: 69: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~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)); {42324#true} is VALID [2022-04-08 04:36:07,147 INFO L290 TraceCheckUtils]: 70: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,148 INFO L290 TraceCheckUtils]: 71: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,148 INFO L290 TraceCheckUtils]: 72: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,148 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #95#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,148 INFO L272 TraceCheckUtils]: 74: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~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)); {42324#true} is VALID [2022-04-08 04:36:07,149 INFO L290 TraceCheckUtils]: 75: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,149 INFO L290 TraceCheckUtils]: 76: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,149 INFO L290 TraceCheckUtils]: 77: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,149 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #97#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,149 INFO L272 TraceCheckUtils]: 79: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,150 INFO L290 TraceCheckUtils]: 80: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-08 04:36:07,150 INFO L290 TraceCheckUtils]: 81: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-08 04:36:07,150 INFO L290 TraceCheckUtils]: 82: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-08 04:36:07,150 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #99#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,150 INFO L272 TraceCheckUtils]: 84: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-08 04:36:07,151 INFO L290 TraceCheckUtils]: 85: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:36:07,151 INFO L290 TraceCheckUtils]: 86: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,151 INFO L290 TraceCheckUtils]: 87: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 04:36:07,152 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #101#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,153 INFO L290 TraceCheckUtils]: 89: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,154 INFO L290 TraceCheckUtils]: 90: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,155 INFO L290 TraceCheckUtils]: 91: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,155 INFO L290 TraceCheckUtils]: 92: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 04:36:07,158 INFO L290 TraceCheckUtils]: 93: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-08 04:36:07,159 INFO L290 TraceCheckUtils]: 94: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !false; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-08 04:36:07,159 INFO L290 TraceCheckUtils]: 95: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !(0 != ~b~0); {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-08 04:36:07,161 INFO L272 TraceCheckUtils]: 96: Hoare triple {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} 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)); {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 04:36:07,162 INFO L290 TraceCheckUtils]: 97: Hoare triple {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {42634#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 04:36:07,162 INFO L290 TraceCheckUtils]: 98: Hoare triple {42634#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {42325#false} is VALID [2022-04-08 04:36:07,162 INFO L290 TraceCheckUtils]: 99: Hoare triple {42325#false} assume !false; {42325#false} is VALID [2022-04-08 04:36:07,163 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 71 proven. 76 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-08 04:36:07,163 INFO L328 TraceCheckSpWp]: Computing backward predicates...