/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 05:28:48,852 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 05:28:48,854 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 05:28:48,899 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 05:28:48,899 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 05:28:48,900 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 05:28:48,901 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 05:28:48,902 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 05:28:48,903 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 05:28:48,903 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 05:28:48,904 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 05:28:48,905 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 05:28:48,905 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 05:28:48,905 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 05:28:48,906 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 05:28:48,907 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 05:28:48,908 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 05:28:48,911 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 05:28:48,912 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 05:28:48,913 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 05:28:48,914 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 05:28:48,928 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 05:28:48,929 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 05:28:48,930 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 05:28:48,930 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 05:28:48,932 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 05:28:48,932 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 05:28:48,933 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 05:28:48,933 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 05:28:48,934 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 05:28:48,934 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 05:28:48,935 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 05:28:48,935 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 05:28:48,936 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 05:28:48,936 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 05:28:48,937 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 05:28:48,937 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 05:28:48,938 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 05:28:48,938 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 05:28:48,938 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 05:28:48,939 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 05:28:48,941 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 05:28:48,942 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 05:28:48,955 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 05:28:48,956 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 05:28:48,957 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 05:28:48,957 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 05:28:48,957 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 05:28:48,957 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 05:28:48,957 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 05:28:48,957 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 05:28:48,957 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 05:28:48,958 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 05:28:48,958 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 05:28:48,959 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 05:28:48,959 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 05:28:48,959 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 05:28:48,959 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 05:28:48,959 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 05:28:48,959 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 05:28:48,960 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 05:28:48,960 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:28:48,960 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 05:28:48,960 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 05:28:48,960 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 05:28:48,960 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 05:28:48,961 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 05:28:48,961 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 05:28:48,961 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 05:28:49,127 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 05:28:49,141 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 05:28:49,142 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 05:28:49,143 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 05:28:49,144 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 05:28:49,145 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c [2022-04-08 05:28:49,182 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d07f901a/fc8fad14b26846b6a822e5ec7356fa93/FLAGff76db5f0 [2022-04-08 05:28:49,528 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 05:28:49,528 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c [2022-04-08 05:28:49,533 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d07f901a/fc8fad14b26846b6a822e5ec7356fa93/FLAGff76db5f0 [2022-04-08 05:28:49,546 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d07f901a/fc8fad14b26846b6a822e5ec7356fa93 [2022-04-08 05:28:49,548 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 05:28:49,549 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 05:28:49,550 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 05:28:49,550 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 05:28:49,553 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 05:28:49,557 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,558 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@48c65926 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49, skipping insertion in model container [2022-04-08 05:28:49,558 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,563 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 05:28:49,573 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 05:28:49,713 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c[489,502] [2022-04-08 05:28:49,728 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:28:49,736 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 05:28:49,746 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c[489,502] [2022-04-08 05:28:49,753 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:28:49,776 INFO L208 MainTranslator]: Completed translation [2022-04-08 05:28:49,777 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49 WrapperNode [2022-04-08 05:28:49,777 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 05:28:49,777 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 05:28:49,778 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 05:28:49,778 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 05:28:49,786 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,786 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,791 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,792 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,797 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,801 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,802 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,804 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 05:28:49,804 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 05:28:49,805 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 05:28:49,805 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 05:28:49,806 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (1/1) ... [2022-04-08 05:28:49,812 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:28:49,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:49,870 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 05:28:49,875 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 05:28:49,899 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 05:28:49,899 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 05:28:49,899 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 05:28:49,899 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 05:28:49,899 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 05:28:49,899 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 05:28:49,899 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 05:28:49,899 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 05:28:49,899 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 05:28:49,899 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 05:28:49,900 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 05:28:49,941 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 05:28:49,942 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 05:28:50,125 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 05:28:50,132 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 05:28:50,132 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-08 05:28:50,134 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:28:50 BoogieIcfgContainer [2022-04-08 05:28:50,134 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 05:28:50,135 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 05:28:50,135 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 05:28:50,139 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 05:28:50,140 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 05:28:49" (1/3) ... [2022-04-08 05:28:50,154 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2630611e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:28:50, skipping insertion in model container [2022-04-08 05:28:50,154 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:28:49" (2/3) ... [2022-04-08 05:28:50,155 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2630611e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:28:50, skipping insertion in model container [2022-04-08 05:28:50,155 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:28:50" (3/3) ... [2022-04-08 05:28:50,156 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_unwindbound10.c [2022-04-08 05:28:50,160 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 05:28:50,160 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 05:28:50,190 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 05:28:50,195 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 05:28:50,195 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 05:28:50,209 INFO L276 IsEmpty]: Start isEmpty. Operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:28:50,214 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-08 05:28:50,214 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:50,215 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 05:28:50,215 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:50,218 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:50,219 INFO L85 PathProgramCache]: Analyzing trace with hash 1226702723, now seen corresponding path program 1 times [2022-04-08 05:28:50,224 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:50,225 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1380236322] [2022-04-08 05:28:50,232 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:50,233 INFO L85 PathProgramCache]: Analyzing trace with hash 1226702723, now seen corresponding path program 2 times [2022-04-08 05:28:50,235 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:50,235 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [313129749] [2022-04-08 05:28:50,235 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:50,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:50,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:50,407 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 05:28:50,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:50,432 INFO L290 TraceCheckUtils]: 0: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {38#true} is VALID [2022-04-08 05:28:50,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume true; {38#true} is VALID [2022-04-08 05:28:50,433 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {38#true} {38#true} #82#return; {38#true} is VALID [2022-04-08 05:28:50,433 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 05:28:50,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:50,449 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-08 05:28:50,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-08 05:28:50,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-08 05:28:50,450 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {38#true} #64#return; {39#false} is VALID [2022-04-08 05:28:50,451 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-08 05:28:50,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:50,464 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-08 05:28:50,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-08 05:28:50,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-08 05:28:50,466 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #66#return; {39#false} is VALID [2022-04-08 05:28:50,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {38#true} call ULTIMATE.init(); {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 05:28:50,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {38#true} is VALID [2022-04-08 05:28:50,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#true} assume true; {38#true} is VALID [2022-04-08 05:28:50,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} #82#return; {38#true} is VALID [2022-04-08 05:28:50,468 INFO L272 TraceCheckUtils]: 4: Hoare triple {38#true} call #t~ret7 := main(); {38#true} is VALID [2022-04-08 05:28:50,468 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {38#true} is VALID [2022-04-08 05:28:50,469 INFO L272 TraceCheckUtils]: 6: Hoare triple {38#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38#true} is VALID [2022-04-08 05:28:50,469 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-08 05:28:50,470 INFO L290 TraceCheckUtils]: 8: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-08 05:28:50,470 INFO L290 TraceCheckUtils]: 9: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-08 05:28:50,470 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {39#false} {38#true} #64#return; {39#false} is VALID [2022-04-08 05:28:50,471 INFO L272 TraceCheckUtils]: 11: Hoare triple {39#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38#true} is VALID [2022-04-08 05:28:50,471 INFO L290 TraceCheckUtils]: 12: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-08 05:28:50,471 INFO L290 TraceCheckUtils]: 13: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-08 05:28:50,471 INFO L290 TraceCheckUtils]: 14: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-08 05:28:50,471 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {39#false} {39#false} #66#return; {39#false} is VALID [2022-04-08 05:28:50,472 INFO L290 TraceCheckUtils]: 16: Hoare triple {39#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {39#false} is VALID [2022-04-08 05:28:50,472 INFO L290 TraceCheckUtils]: 17: Hoare triple {39#false} assume !true; {39#false} is VALID [2022-04-08 05:28:50,472 INFO L272 TraceCheckUtils]: 18: Hoare triple {39#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {39#false} is VALID [2022-04-08 05:28:50,472 INFO L290 TraceCheckUtils]: 19: Hoare triple {39#false} ~cond := #in~cond; {39#false} is VALID [2022-04-08 05:28:50,472 INFO L290 TraceCheckUtils]: 20: Hoare triple {39#false} assume 0 == ~cond; {39#false} is VALID [2022-04-08 05:28:50,472 INFO L290 TraceCheckUtils]: 21: Hoare triple {39#false} assume !false; {39#false} is VALID [2022-04-08 05:28:50,473 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 05:28:50,473 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:50,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [313129749] [2022-04-08 05:28:50,474 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [313129749] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:50,474 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:50,474 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:28:50,476 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:50,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1380236322] [2022-04-08 05:28:50,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1380236322] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:50,477 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:50,477 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:28:50,479 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353000336] [2022-04-08 05:28:50,479 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:50,485 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 05:28:50,487 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:50,489 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 05:28:50,527 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 05:28:50,527 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 05:28:50,527 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:50,543 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 05:28:50,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 05:28:50,546 INFO L87 Difference]: Start difference. First operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 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 05:28:50,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:50,749 INFO L93 Difference]: Finished difference Result 64 states and 97 transitions. [2022-04-08 05:28:50,750 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 05:28:50,750 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 05:28:50,750 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:50,751 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 05:28:50,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2022-04-08 05:28:50,767 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 05:28:50,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2022-04-08 05:28:50,796 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 97 transitions. [2022-04-08 05:28:50,908 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 05:28:50,918 INFO L225 Difference]: With dead ends: 64 [2022-04-08 05:28:50,918 INFO L226 Difference]: Without dead ends: 31 [2022-04-08 05:28:50,922 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 05:28:50,928 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:50,930 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 45 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:28:50,943 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-08 05:28:50,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 30. [2022-04-08 05:28:50,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:50,968 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:50,968 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:50,969 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:50,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:50,972 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-08 05:28:50,972 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-08 05:28:50,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:50,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:50,973 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-08 05:28:50,974 INFO L87 Difference]: Start difference. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-08 05:28:50,977 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:50,977 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-08 05:28:50,977 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-08 05:28:50,977 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:50,978 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:50,978 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:50,978 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:50,978 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:50,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-04-08 05:28:50,984 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 22 [2022-04-08 05:28:50,985 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:50,985 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-04-08 05:28:50,986 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 05:28:50,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 39 transitions. [2022-04-08 05:28:51,018 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 05:28:51,019 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-04-08 05:28:51,019 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 05:28:51,019 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:51,020 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 05:28:51,020 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 05:28:51,020 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:51,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:51,023 INFO L85 PathProgramCache]: Analyzing trace with hash 1346542817, now seen corresponding path program 1 times [2022-04-08 05:28:51,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:51,023 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1976591967] [2022-04-08 05:28:51,029 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:51,029 INFO L85 PathProgramCache]: Analyzing trace with hash 1346542817, now seen corresponding path program 2 times [2022-04-08 05:28:51,029 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:51,029 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1275203758] [2022-04-08 05:28:51,029 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:51,030 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:51,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:51,112 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 05:28:51,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:51,148 INFO L290 TraceCheckUtils]: 0: Hoare triple {319#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,149 INFO L290 TraceCheckUtils]: 1: Hoare triple {309#(= ~counter~0 0)} assume true; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,149 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {309#(= ~counter~0 0)} {304#true} #82#return; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,149 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 05:28:51,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:51,164 INFO L290 TraceCheckUtils]: 0: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-08 05:28:51,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-08 05:28:51,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-08 05:28:51,166 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #64#return; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,166 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-08 05:28:51,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:51,172 INFO L290 TraceCheckUtils]: 0: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-08 05:28:51,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-08 05:28:51,172 INFO L290 TraceCheckUtils]: 2: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-08 05:28:51,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #66#return; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {304#true} call ULTIMATE.init(); {319#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 05:28:51,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {319#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {309#(= ~counter~0 0)} assume true; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,174 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {309#(= ~counter~0 0)} {304#true} #82#return; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,175 INFO L272 TraceCheckUtils]: 4: Hoare triple {309#(= ~counter~0 0)} call #t~ret7 := main(); {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,175 INFO L290 TraceCheckUtils]: 5: Hoare triple {309#(= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,175 INFO L272 TraceCheckUtils]: 6: Hoare triple {309#(= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {304#true} is VALID [2022-04-08 05:28:51,176 INFO L290 TraceCheckUtils]: 7: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-08 05:28:51,176 INFO L290 TraceCheckUtils]: 8: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-08 05:28:51,176 INFO L290 TraceCheckUtils]: 9: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-08 05:28:51,177 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #64#return; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,177 INFO L272 TraceCheckUtils]: 11: Hoare triple {309#(= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {304#true} is VALID [2022-04-08 05:28:51,177 INFO L290 TraceCheckUtils]: 12: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-08 05:28:51,177 INFO L290 TraceCheckUtils]: 13: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-08 05:28:51,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-08 05:28:51,178 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #66#return; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,178 INFO L290 TraceCheckUtils]: 16: Hoare triple {309#(= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {309#(= ~counter~0 0)} is VALID [2022-04-08 05:28:51,179 INFO L290 TraceCheckUtils]: 17: Hoare triple {309#(= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {318#(= |main_#t~post6| 0)} is VALID [2022-04-08 05:28:51,179 INFO L290 TraceCheckUtils]: 18: Hoare triple {318#(= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {305#false} is VALID [2022-04-08 05:28:51,179 INFO L272 TraceCheckUtils]: 19: Hoare triple {305#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {305#false} is VALID [2022-04-08 05:28:51,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {305#false} ~cond := #in~cond; {305#false} is VALID [2022-04-08 05:28:51,180 INFO L290 TraceCheckUtils]: 21: Hoare triple {305#false} assume 0 == ~cond; {305#false} is VALID [2022-04-08 05:28:51,180 INFO L290 TraceCheckUtils]: 22: Hoare triple {305#false} assume !false; {305#false} is VALID [2022-04-08 05:28:51,180 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 05:28:51,180 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:51,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1275203758] [2022-04-08 05:28:51,181 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1275203758] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:51,181 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:51,181 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:51,181 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:51,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1976591967] [2022-04-08 05:28:51,181 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1976591967] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:51,181 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:51,181 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:51,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [152003337] [2022-04-08 05:28:51,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:51,185 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-08 05:28:51,185 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:51,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 05:28:51,204 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 05:28:51,205 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:51,205 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:51,205 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:51,205 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:28:51,206 INFO L87 Difference]: Start difference. First operand 30 states and 39 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 05:28:51,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:51,426 INFO L93 Difference]: Finished difference Result 42 states and 54 transitions. [2022-04-08 05:28:51,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:28:51,426 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-08 05:28:51,427 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:51,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 05:28:51,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-04-08 05:28:51,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 05:28:51,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-04-08 05:28:51,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 54 transitions. [2022-04-08 05:28:51,472 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 05:28:51,474 INFO L225 Difference]: With dead ends: 42 [2022-04-08 05:28:51,474 INFO L226 Difference]: Without dead ends: 32 [2022-04-08 05:28:51,474 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 8 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 05:28:51,475 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 13 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:51,475 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 65 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:28:51,476 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-08 05:28:51,480 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-08 05:28:51,480 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:51,480 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:51,480 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:51,481 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:51,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:51,482 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-08 05:28:51,483 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 05:28:51,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:51,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:51,483 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-08 05:28:51,484 INFO L87 Difference]: Start difference. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-08 05:28:51,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:51,486 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-08 05:28:51,486 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 05:28:51,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:51,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:51,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:51,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:51,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:28:51,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-08 05:28:51,488 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 23 [2022-04-08 05:28:51,488 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:51,488 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-08 05:28:51,488 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 05:28:51,489 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 41 transitions. [2022-04-08 05:28:51,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:51,519 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 05:28:51,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 05:28:51,520 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:51,520 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 05:28:51,520 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-08 05:28:51,520 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:51,520 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:51,520 INFO L85 PathProgramCache]: Analyzing trace with hash 1348211113, now seen corresponding path program 1 times [2022-04-08 05:28:51,521 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:51,521 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1644039907] [2022-04-08 05:28:51,521 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:51,521 INFO L85 PathProgramCache]: Analyzing trace with hash 1348211113, now seen corresponding path program 2 times [2022-04-08 05:28:51,521 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:51,521 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [966729603] [2022-04-08 05:28:51,521 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:51,521 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:51,534 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:51,535 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [285100167] [2022-04-08 05:28:51,535 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:51,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:51,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:51,536 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 05:28:51,557 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 05:28:51,580 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 05:28:51,581 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:51,582 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:28:51,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:51,613 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:51,781 INFO L272 TraceCheckUtils]: 0: Hoare triple {537#true} call ULTIMATE.init(); {537#true} is VALID [2022-04-08 05:28:51,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {537#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {537#true} is VALID [2022-04-08 05:28:51,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {537#true} assume true; {537#true} is VALID [2022-04-08 05:28:51,782 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {537#true} {537#true} #82#return; {537#true} is VALID [2022-04-08 05:28:51,782 INFO L272 TraceCheckUtils]: 4: Hoare triple {537#true} call #t~ret7 := main(); {537#true} is VALID [2022-04-08 05:28:51,782 INFO L290 TraceCheckUtils]: 5: Hoare triple {537#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {537#true} is VALID [2022-04-08 05:28:51,782 INFO L272 TraceCheckUtils]: 6: Hoare triple {537#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {537#true} is VALID [2022-04-08 05:28:51,782 INFO L290 TraceCheckUtils]: 7: Hoare triple {537#true} ~cond := #in~cond; {537#true} is VALID [2022-04-08 05:28:51,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {537#true} assume !(0 == ~cond); {537#true} is VALID [2022-04-08 05:28:51,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {537#true} assume true; {537#true} is VALID [2022-04-08 05:28:51,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {537#true} {537#true} #64#return; {537#true} is VALID [2022-04-08 05:28:51,782 INFO L272 TraceCheckUtils]: 11: Hoare triple {537#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {537#true} is VALID [2022-04-08 05:28:51,783 INFO L290 TraceCheckUtils]: 12: Hoare triple {537#true} ~cond := #in~cond; {537#true} is VALID [2022-04-08 05:28:51,783 INFO L290 TraceCheckUtils]: 13: Hoare triple {537#true} assume !(0 == ~cond); {537#true} is VALID [2022-04-08 05:28:51,783 INFO L290 TraceCheckUtils]: 14: Hoare triple {537#true} assume true; {537#true} is VALID [2022-04-08 05:28:51,783 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {537#true} {537#true} #66#return; {537#true} is VALID [2022-04-08 05:28:51,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {537#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 05:28:51,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 05:28:51,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-08 05:28:51,787 INFO L272 TraceCheckUtils]: 19: Hoare triple {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {600#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:51,788 INFO L290 TraceCheckUtils]: 20: Hoare triple {600#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {604#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:51,788 INFO L290 TraceCheckUtils]: 21: Hoare triple {604#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {538#false} is VALID [2022-04-08 05:28:51,788 INFO L290 TraceCheckUtils]: 22: Hoare triple {538#false} assume !false; {538#false} is VALID [2022-04-08 05:28:51,788 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 05:28:51,788 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:28:51,789 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:51,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [966729603] [2022-04-08 05:28:51,789 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:28:51,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [285100167] [2022-04-08 05:28:51,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [285100167] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:51,789 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:51,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:51,790 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:51,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1644039907] [2022-04-08 05:28:51,790 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1644039907] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:51,790 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:51,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:51,790 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [658489262] [2022-04-08 05:28:51,790 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:51,790 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:51,791 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:51,791 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:51,818 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 05:28:51,818 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:51,818 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:51,819 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:51,819 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:28:51,819 INFO L87 Difference]: Start difference. First operand 32 states and 41 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:52,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:52,004 INFO L93 Difference]: Finished difference Result 49 states and 66 transitions. [2022-04-08 05:28:52,004 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:28:52,004 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:52,005 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:52,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:52,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:28:52,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:52,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:28:52,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-08 05:28:52,050 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 05:28:52,052 INFO L225 Difference]: With dead ends: 49 [2022-04-08 05:28:52,053 INFO L226 Difference]: Without dead ends: 47 [2022-04-08 05:28:52,053 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 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 05:28:52,054 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:52,054 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 136 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:28:52,054 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-08 05:28:52,065 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-04-08 05:28:52,065 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:52,066 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,066 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,066 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:52,069 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-08 05:28:52,069 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-08 05:28:52,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:52,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:52,070 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-08 05:28:52,070 INFO L87 Difference]: Start difference. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-08 05:28:52,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:52,072 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-08 05:28:52,072 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-08 05:28:52,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:52,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:52,073 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:52,073 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:52,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 63 transitions. [2022-04-08 05:28:52,076 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 63 transitions. Word has length 23 [2022-04-08 05:28:52,076 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:52,076 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 63 transitions. [2022-04-08 05:28:52,076 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 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 05:28:52,076 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 63 transitions. [2022-04-08 05:28:52,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:52,130 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-08 05:28:52,131 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 05:28:52,131 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:52,131 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 05:28:52,150 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-08 05:28:52,347 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:52,348 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:52,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:52,348 INFO L85 PathProgramCache]: Analyzing trace with hash -1060153012, now seen corresponding path program 1 times [2022-04-08 05:28:52,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:52,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1560999960] [2022-04-08 05:28:52,349 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:52,349 INFO L85 PathProgramCache]: Analyzing trace with hash -1060153012, now seen corresponding path program 2 times [2022-04-08 05:28:52,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:52,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [158322310] [2022-04-08 05:28:52,349 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:52,349 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:52,363 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:52,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [915361942] [2022-04-08 05:28:52,364 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:52,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:52,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:52,365 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 05:28:52,366 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 05:28:52,402 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:28:52,402 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:52,403 INFO L263 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:28:52,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:52,411 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:52,590 INFO L272 TraceCheckUtils]: 0: Hoare triple {896#true} call ULTIMATE.init(); {896#true} is VALID [2022-04-08 05:28:52,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {896#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {896#true} is VALID [2022-04-08 05:28:52,591 INFO L290 TraceCheckUtils]: 2: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-08 05:28:52,591 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {896#true} {896#true} #82#return; {896#true} is VALID [2022-04-08 05:28:52,591 INFO L272 TraceCheckUtils]: 4: Hoare triple {896#true} call #t~ret7 := main(); {896#true} is VALID [2022-04-08 05:28:52,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {896#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {896#true} is VALID [2022-04-08 05:28:52,591 INFO L272 TraceCheckUtils]: 6: Hoare triple {896#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {896#true} is VALID [2022-04-08 05:28:52,591 INFO L290 TraceCheckUtils]: 7: Hoare triple {896#true} ~cond := #in~cond; {896#true} is VALID [2022-04-08 05:28:52,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {896#true} assume !(0 == ~cond); {896#true} is VALID [2022-04-08 05:28:52,591 INFO L290 TraceCheckUtils]: 9: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-08 05:28:52,591 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {896#true} {896#true} #64#return; {896#true} is VALID [2022-04-08 05:28:52,592 INFO L272 TraceCheckUtils]: 11: Hoare triple {896#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {896#true} is VALID [2022-04-08 05:28:52,592 INFO L290 TraceCheckUtils]: 12: Hoare triple {896#true} ~cond := #in~cond; {896#true} is VALID [2022-04-08 05:28:52,592 INFO L290 TraceCheckUtils]: 13: Hoare triple {896#true} assume !(0 == ~cond); {896#true} is VALID [2022-04-08 05:28:52,592 INFO L290 TraceCheckUtils]: 14: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-08 05:28:52,592 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {896#true} {896#true} #66#return; {896#true} is VALID [2022-04-08 05:28:52,594 INFO L290 TraceCheckUtils]: 16: Hoare triple {896#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:52,594 INFO L290 TraceCheckUtils]: 17: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:52,595 INFO L290 TraceCheckUtils]: 18: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:52,595 INFO L272 TraceCheckUtils]: 19: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {896#true} is VALID [2022-04-08 05:28:52,595 INFO L290 TraceCheckUtils]: 20: Hoare triple {896#true} ~cond := #in~cond; {896#true} is VALID [2022-04-08 05:28:52,595 INFO L290 TraceCheckUtils]: 21: Hoare triple {896#true} assume !(0 == ~cond); {896#true} is VALID [2022-04-08 05:28:52,595 INFO L290 TraceCheckUtils]: 22: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-08 05:28:52,596 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {896#true} {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:52,596 INFO L272 TraceCheckUtils]: 24: Hoare triple {949#(and (= main_~r~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)); {974#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:52,597 INFO L290 TraceCheckUtils]: 25: Hoare triple {974#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {978#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:52,598 INFO L290 TraceCheckUtils]: 26: Hoare triple {978#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {897#false} is VALID [2022-04-08 05:28:52,598 INFO L290 TraceCheckUtils]: 27: Hoare triple {897#false} assume !false; {897#false} is VALID [2022-04-08 05:28:52,598 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 05:28:52,598 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:28:52,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:52,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [158322310] [2022-04-08 05:28:52,598 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:28:52,599 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [915361942] [2022-04-08 05:28:52,599 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [915361942] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:52,599 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:52,599 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:52,599 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:52,599 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1560999960] [2022-04-08 05:28:52,599 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1560999960] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:52,599 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:52,599 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:52,599 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [330330176] [2022-04-08 05:28:52,599 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:52,600 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 05:28:52,600 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:52,600 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 05:28:52,622 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:52,622 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:52,622 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:52,623 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:52,623 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:28:52,624 INFO L87 Difference]: Start difference. First operand 46 states and 63 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 05:28:52,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:52,801 INFO L93 Difference]: Finished difference Result 53 states and 69 transitions. [2022-04-08 05:28:52,802 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:28:52,802 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 05:28:52,802 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:52,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 05:28:52,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:28:52,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 05:28:52,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:28:52,806 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-08 05:28:52,846 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 05:28:52,847 INFO L225 Difference]: With dead ends: 53 [2022-04-08 05:28:52,848 INFO L226 Difference]: Without dead ends: 51 [2022-04-08 05:28:52,848 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 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 05:28:52,849 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 9 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:52,849 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 136 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:28:52,849 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-08 05:28:52,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-08 05:28:52,862 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:52,862 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,862 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,863 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:52,865 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-08 05:28:52,865 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-08 05:28:52,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:52,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:52,866 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-08 05:28:52,866 INFO L87 Difference]: Start difference. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-08 05:28:52,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:52,868 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-08 05:28:52,868 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-08 05:28:52,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:52,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:52,868 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:52,868 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:52,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 05:28:52,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 66 transitions. [2022-04-08 05:28:52,870 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 66 transitions. Word has length 28 [2022-04-08 05:28:52,871 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:52,871 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 66 transitions. [2022-04-08 05:28:52,871 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 05:28:52,871 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 66 transitions. [2022-04-08 05:28:52,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:52,919 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-08 05:28:52,919 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 05:28:52,919 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:52,919 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] [2022-04-08 05:28:52,950 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 05:28:53,131 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,SelfDestructingSolverStorable3 [2022-04-08 05:28:53,131 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:53,132 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:53,132 INFO L85 PathProgramCache]: Analyzing trace with hash -560761015, now seen corresponding path program 1 times [2022-04-08 05:28:53,132 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:53,132 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [144973559] [2022-04-08 05:28:53,132 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:53,132 INFO L85 PathProgramCache]: Analyzing trace with hash -560761015, now seen corresponding path program 2 times [2022-04-08 05:28:53,133 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:53,133 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [784553030] [2022-04-08 05:28:53,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:53,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:53,144 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:53,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1715393072] [2022-04-08 05:28:53,145 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:53,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:53,145 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:53,148 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 05:28:53,149 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 05:28:53,189 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:28:53,189 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:53,190 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 05:28:53,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:53,207 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:53,379 INFO L272 TraceCheckUtils]: 0: Hoare triple {1294#true} call ULTIMATE.init(); {1294#true} is VALID [2022-04-08 05:28:53,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {1294#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1294#true} is VALID [2022-04-08 05:28:53,380 INFO L290 TraceCheckUtils]: 2: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,380 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1294#true} {1294#true} #82#return; {1294#true} is VALID [2022-04-08 05:28:53,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {1294#true} call #t~ret7 := main(); {1294#true} is VALID [2022-04-08 05:28:53,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {1294#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {1294#true} is VALID [2022-04-08 05:28:53,380 INFO L272 TraceCheckUtils]: 6: Hoare triple {1294#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {1294#true} ~cond := #in~cond; {1320#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:28:53,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {1320#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1324#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:28:53,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {1324#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1324#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:28:53,382 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1324#(not (= |assume_abort_if_not_#in~cond| 0))} {1294#true} #64#return; {1331#(<= 1 main_~x~0)} is VALID [2022-04-08 05:28:53,382 INFO L272 TraceCheckUtils]: 11: Hoare triple {1331#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,382 INFO L290 TraceCheckUtils]: 12: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,382 INFO L290 TraceCheckUtils]: 13: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,384 INFO L290 TraceCheckUtils]: 14: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,384 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1294#true} {1331#(<= 1 main_~x~0)} #66#return; {1331#(<= 1 main_~x~0)} is VALID [2022-04-08 05:28:53,385 INFO L290 TraceCheckUtils]: 16: Hoare triple {1331#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:28:53,385 INFO L290 TraceCheckUtils]: 17: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:28:53,386 INFO L290 TraceCheckUtils]: 18: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:28:53,386 INFO L272 TraceCheckUtils]: 19: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,386 INFO L290 TraceCheckUtils]: 20: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,386 INFO L290 TraceCheckUtils]: 21: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,386 INFO L290 TraceCheckUtils]: 22: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,387 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1294#true} {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:28:53,387 INFO L272 TraceCheckUtils]: 24: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,387 INFO L290 TraceCheckUtils]: 25: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,387 INFO L290 TraceCheckUtils]: 26: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,387 INFO L290 TraceCheckUtils]: 27: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,388 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1294#true} {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:28:53,388 INFO L272 TraceCheckUtils]: 29: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:53,389 INFO L290 TraceCheckUtils]: 30: Hoare triple {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1394#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:53,389 INFO L290 TraceCheckUtils]: 31: Hoare triple {1394#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1295#false} is VALID [2022-04-08 05:28:53,389 INFO L290 TraceCheckUtils]: 32: Hoare triple {1295#false} assume !false; {1295#false} is VALID [2022-04-08 05:28:53,390 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-08 05:28:53,390 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:28:53,571 INFO L290 TraceCheckUtils]: 32: Hoare triple {1295#false} assume !false; {1295#false} is VALID [2022-04-08 05:28:53,571 INFO L290 TraceCheckUtils]: 31: Hoare triple {1394#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1295#false} is VALID [2022-04-08 05:28:53,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1394#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:53,572 INFO L272 TraceCheckUtils]: 29: Hoare triple {1410#(= 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)); {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:53,573 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1294#true} {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:28:53,573 INFO L290 TraceCheckUtils]: 27: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,573 INFO L290 TraceCheckUtils]: 26: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,574 INFO L290 TraceCheckUtils]: 25: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,574 INFO L272 TraceCheckUtils]: 24: Hoare triple {1410#(= 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)); {1294#true} is VALID [2022-04-08 05:28:53,574 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1294#true} {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:28:53,574 INFO L290 TraceCheckUtils]: 22: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,574 INFO L290 TraceCheckUtils]: 21: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,575 INFO L272 TraceCheckUtils]: 19: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,576 INFO L290 TraceCheckUtils]: 18: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:28:53,576 INFO L290 TraceCheckUtils]: 17: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:28:53,576 INFO L290 TraceCheckUtils]: 16: Hoare triple {1294#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:28:53,577 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1294#true} {1294#true} #66#return; {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L290 TraceCheckUtils]: 14: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L290 TraceCheckUtils]: 13: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L290 TraceCheckUtils]: 12: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L272 TraceCheckUtils]: 11: Hoare triple {1294#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1294#true} {1294#true} #64#return; {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L290 TraceCheckUtils]: 9: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L290 TraceCheckUtils]: 8: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L290 TraceCheckUtils]: 7: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-08 05:28:53,577 INFO L272 TraceCheckUtils]: 6: Hoare triple {1294#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {1294#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L272 TraceCheckUtils]: 4: Hoare triple {1294#true} call #t~ret7 := main(); {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1294#true} {1294#true} #82#return; {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L290 TraceCheckUtils]: 2: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {1294#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L272 TraceCheckUtils]: 0: Hoare triple {1294#true} call ULTIMATE.init(); {1294#true} is VALID [2022-04-08 05:28:53,578 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-08 05:28:53,578 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:53,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [784553030] [2022-04-08 05:28:53,578 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:28:53,579 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1715393072] [2022-04-08 05:28:53,579 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1715393072] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:28:53,579 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:28:53,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-08 05:28:53,579 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:53,579 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [144973559] [2022-04-08 05:28:53,579 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [144973559] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:53,579 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:53,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:53,579 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1524789137] [2022-04-08 05:28:53,579 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:53,580 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 33 [2022-04-08 05:28:53,580 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:53,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 05:28:53,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:53,598 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:53,598 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:53,599 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:53,599 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:28:53,599 INFO L87 Difference]: Start difference. First operand 50 states and 66 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 05:28:53,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:53,832 INFO L93 Difference]: Finished difference Result 75 states and 107 transitions. [2022-04-08 05:28:53,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:28:53,833 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 33 [2022-04-08 05:28:53,833 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:53,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 05:28:53,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:28:53,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 05:28:53,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:28:53,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-08 05:28:53,882 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 05:28:53,883 INFO L225 Difference]: With dead ends: 75 [2022-04-08 05:28:53,884 INFO L226 Difference]: Without dead ends: 71 [2022-04-08 05:28:53,884 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:28:53,884 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:53,885 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 128 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:28:53,885 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-08 05:28:53,914 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-08 05:28:53,914 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:53,915 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:28:53,915 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:28:53,915 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:28:53,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:53,918 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-08 05:28:53,918 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-08 05:28:53,919 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:53,919 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:53,919 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-08 05:28:53,919 INFO L87 Difference]: Start difference. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-08 05:28:53,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:53,922 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-08 05:28:53,922 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-08 05:28:53,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:53,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:53,923 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:53,923 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:53,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:28:53,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 100 transitions. [2022-04-08 05:28:53,926 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 100 transitions. Word has length 33 [2022-04-08 05:28:53,926 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:53,926 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 100 transitions. [2022-04-08 05:28:53,926 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 05:28:53,926 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 100 transitions. [2022-04-08 05:28:54,022 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 05:28:54,022 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-08 05:28:54,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-08 05:28:54,023 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:54,023 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] [2022-04-08 05:28:54,042 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 05:28:54,231 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:54,232 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:54,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:54,232 INFO L85 PathProgramCache]: Analyzing trace with hash 201438379, now seen corresponding path program 1 times [2022-04-08 05:28:54,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:54,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1638247761] [2022-04-08 05:28:54,232 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:54,233 INFO L85 PathProgramCache]: Analyzing trace with hash 201438379, now seen corresponding path program 2 times [2022-04-08 05:28:54,233 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:54,233 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2047249419] [2022-04-08 05:28:54,233 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:54,233 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:54,246 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:54,246 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [241576091] [2022-04-08 05:28:54,246 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:54,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:54,246 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:54,256 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 05:28:54,257 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 05:28:54,296 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:28:54,296 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:54,297 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 05:28:54,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:54,305 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:54,392 INFO L272 TraceCheckUtils]: 0: Hoare triple {1936#true} call ULTIMATE.init(); {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L290 TraceCheckUtils]: 1: Hoare triple {1936#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L290 TraceCheckUtils]: 2: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1936#true} {1936#true} #82#return; {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L272 TraceCheckUtils]: 4: Hoare triple {1936#true} call #t~ret7 := main(); {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L290 TraceCheckUtils]: 5: Hoare triple {1936#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L272 TraceCheckUtils]: 6: Hoare triple {1936#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L290 TraceCheckUtils]: 7: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L290 TraceCheckUtils]: 8: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-08 05:28:54,393 INFO L290 TraceCheckUtils]: 9: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-08 05:28:54,394 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1936#true} {1936#true} #64#return; {1936#true} is VALID [2022-04-08 05:28:54,394 INFO L272 TraceCheckUtils]: 11: Hoare triple {1936#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1936#true} is VALID [2022-04-08 05:28:54,394 INFO L290 TraceCheckUtils]: 12: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-08 05:28:54,397 INFO L290 TraceCheckUtils]: 13: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L290 TraceCheckUtils]: 14: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1936#true} {1936#true} #66#return; {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L290 TraceCheckUtils]: 16: Hoare triple {1936#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L290 TraceCheckUtils]: 17: Hoare triple {1936#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L290 TraceCheckUtils]: 18: Hoare triple {1936#true} assume !!(#t~post6 < 10);havoc #t~post6; {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L272 TraceCheckUtils]: 19: Hoare triple {1936#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1936#true} is VALID [2022-04-08 05:28:54,398 INFO L290 TraceCheckUtils]: 20: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 21: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 22: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1936#true} {1936#true} #68#return; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L272 TraceCheckUtils]: 24: Hoare triple {1936#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 25: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 26: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 27: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1936#true} {1936#true} #70#return; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L272 TraceCheckUtils]: 29: Hoare triple {1936#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 30: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 31: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-08 05:28:54,399 INFO L290 TraceCheckUtils]: 32: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-08 05:28:54,400 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1936#true} {1936#true} #72#return; {1936#true} is VALID [2022-04-08 05:28:54,401 INFO L290 TraceCheckUtils]: 34: Hoare triple {1936#true} assume !(~a~0 != ~b~0); {2043#(= main_~b~0 main_~a~0)} is VALID [2022-04-08 05:28:54,401 INFO L272 TraceCheckUtils]: 35: Hoare triple {2043#(= main_~b~0 main_~a~0)} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2047#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:54,401 INFO L290 TraceCheckUtils]: 36: Hoare triple {2047#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2051#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:54,402 INFO L290 TraceCheckUtils]: 37: Hoare triple {2051#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1937#false} is VALID [2022-04-08 05:28:54,402 INFO L290 TraceCheckUtils]: 38: Hoare triple {1937#false} assume !false; {1937#false} is VALID [2022-04-08 05:28:54,403 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 05:28:54,403 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:28:54,403 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:54,403 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2047249419] [2022-04-08 05:28:54,403 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:28:54,403 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [241576091] [2022-04-08 05:28:54,404 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [241576091] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:54,404 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:54,404 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:54,405 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:54,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1638247761] [2022-04-08 05:28:54,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1638247761] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:54,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:54,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:54,405 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189447291] [2022-04-08 05:28:54,406 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:54,407 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-08 05:28:54,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:54,409 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 05:28:54,426 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:54,426 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:54,426 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:54,426 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:54,426 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:28:54,427 INFO L87 Difference]: Start difference. First operand 71 states and 100 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 05:28:54,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:54,574 INFO L93 Difference]: Finished difference Result 87 states and 123 transitions. [2022-04-08 05:28:54,574 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:28:54,574 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-08 05:28:54,574 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:54,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 05:28:54,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-08 05:28:54,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 05:28:54,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-08 05:28:54,576 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-08 05:28:54,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:54,613 INFO L225 Difference]: With dead ends: 87 [2022-04-08 05:28:54,614 INFO L226 Difference]: Without dead ends: 85 [2022-04-08 05:28:54,614 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 35 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 05:28:54,614 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 5 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:54,615 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 144 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:28:54,615 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-08 05:28:54,636 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 78. [2022-04-08 05:28:54,636 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:54,637 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:54,637 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:54,637 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:54,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:54,641 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-08 05:28:54,641 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-08 05:28:54,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:54,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:54,641 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-08 05:28:54,642 INFO L87 Difference]: Start difference. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-08 05:28:54,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:54,645 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-08 05:28:54,645 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-08 05:28:54,645 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:54,645 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:54,645 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:54,645 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:54,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:54,648 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 109 transitions. [2022-04-08 05:28:54,648 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 109 transitions. Word has length 39 [2022-04-08 05:28:54,648 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:54,648 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 109 transitions. [2022-04-08 05:28:54,649 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 05:28:54,649 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 109 transitions. [2022-04-08 05:28:54,744 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 05:28:54,744 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 109 transitions. [2022-04-08 05:28:54,744 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-08 05:28:54,744 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:54,744 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:28:54,763 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 05:28:54,959 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:54,960 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:54,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:54,960 INFO L85 PathProgramCache]: Analyzing trace with hash -1085077998, now seen corresponding path program 1 times [2022-04-08 05:28:54,960 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:54,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [558505043] [2022-04-08 05:28:54,960 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:54,961 INFO L85 PathProgramCache]: Analyzing trace with hash -1085077998, now seen corresponding path program 2 times [2022-04-08 05:28:54,961 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:54,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1368217007] [2022-04-08 05:28:54,961 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:54,961 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:54,971 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:54,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [558752790] [2022-04-08 05:28:54,971 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:54,971 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:54,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:54,972 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 05:28:54,973 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 05:28:55,010 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:28:55,010 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:55,011 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:28:55,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:55,022 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:55,168 INFO L272 TraceCheckUtils]: 0: Hoare triple {2559#true} call ULTIMATE.init(); {2559#true} is VALID [2022-04-08 05:28:55,169 INFO L290 TraceCheckUtils]: 1: Hoare triple {2559#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,169 INFO L290 TraceCheckUtils]: 2: Hoare triple {2567#(<= ~counter~0 0)} assume true; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,169 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2567#(<= ~counter~0 0)} {2559#true} #82#return; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,170 INFO L272 TraceCheckUtils]: 4: Hoare triple {2567#(<= ~counter~0 0)} call #t~ret7 := main(); {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,170 INFO L290 TraceCheckUtils]: 5: Hoare triple {2567#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,170 INFO L272 TraceCheckUtils]: 6: Hoare triple {2567#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,171 INFO L290 TraceCheckUtils]: 7: Hoare triple {2567#(<= ~counter~0 0)} ~cond := #in~cond; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,171 INFO L290 TraceCheckUtils]: 8: Hoare triple {2567#(<= ~counter~0 0)} assume !(0 == ~cond); {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,171 INFO L290 TraceCheckUtils]: 9: Hoare triple {2567#(<= ~counter~0 0)} assume true; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,172 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2567#(<= ~counter~0 0)} {2567#(<= ~counter~0 0)} #64#return; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,172 INFO L272 TraceCheckUtils]: 11: Hoare triple {2567#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,172 INFO L290 TraceCheckUtils]: 12: Hoare triple {2567#(<= ~counter~0 0)} ~cond := #in~cond; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,173 INFO L290 TraceCheckUtils]: 13: Hoare triple {2567#(<= ~counter~0 0)} assume !(0 == ~cond); {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,173 INFO L290 TraceCheckUtils]: 14: Hoare triple {2567#(<= ~counter~0 0)} assume true; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,173 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2567#(<= ~counter~0 0)} {2567#(<= ~counter~0 0)} #66#return; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,174 INFO L290 TraceCheckUtils]: 16: Hoare triple {2567#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2567#(<= ~counter~0 0)} is VALID [2022-04-08 05:28:55,179 INFO L290 TraceCheckUtils]: 17: Hoare triple {2567#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,179 INFO L290 TraceCheckUtils]: 18: Hoare triple {2616#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,181 INFO L272 TraceCheckUtils]: 19: Hoare triple {2616#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,181 INFO L290 TraceCheckUtils]: 20: Hoare triple {2616#(<= ~counter~0 1)} ~cond := #in~cond; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,181 INFO L290 TraceCheckUtils]: 21: Hoare triple {2616#(<= ~counter~0 1)} assume !(0 == ~cond); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,182 INFO L290 TraceCheckUtils]: 22: Hoare triple {2616#(<= ~counter~0 1)} assume true; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,182 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2616#(<= ~counter~0 1)} {2616#(<= ~counter~0 1)} #68#return; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,183 INFO L272 TraceCheckUtils]: 24: Hoare triple {2616#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,183 INFO L290 TraceCheckUtils]: 25: Hoare triple {2616#(<= ~counter~0 1)} ~cond := #in~cond; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,183 INFO L290 TraceCheckUtils]: 26: Hoare triple {2616#(<= ~counter~0 1)} assume !(0 == ~cond); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,184 INFO L290 TraceCheckUtils]: 27: Hoare triple {2616#(<= ~counter~0 1)} assume true; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,184 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2616#(<= ~counter~0 1)} {2616#(<= ~counter~0 1)} #70#return; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,185 INFO L272 TraceCheckUtils]: 29: Hoare triple {2616#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,185 INFO L290 TraceCheckUtils]: 30: Hoare triple {2616#(<= ~counter~0 1)} ~cond := #in~cond; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,185 INFO L290 TraceCheckUtils]: 31: Hoare triple {2616#(<= ~counter~0 1)} assume !(0 == ~cond); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,186 INFO L290 TraceCheckUtils]: 32: Hoare triple {2616#(<= ~counter~0 1)} assume true; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,186 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2616#(<= ~counter~0 1)} {2616#(<= ~counter~0 1)} #72#return; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,186 INFO L290 TraceCheckUtils]: 34: Hoare triple {2616#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,187 INFO L290 TraceCheckUtils]: 35: Hoare triple {2616#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2616#(<= ~counter~0 1)} is VALID [2022-04-08 05:28:55,187 INFO L290 TraceCheckUtils]: 36: Hoare triple {2616#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2674#(<= |main_#t~post6| 1)} is VALID [2022-04-08 05:28:55,188 INFO L290 TraceCheckUtils]: 37: Hoare triple {2674#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {2560#false} is VALID [2022-04-08 05:28:55,188 INFO L272 TraceCheckUtils]: 38: Hoare triple {2560#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2560#false} is VALID [2022-04-08 05:28:55,188 INFO L290 TraceCheckUtils]: 39: Hoare triple {2560#false} ~cond := #in~cond; {2560#false} is VALID [2022-04-08 05:28:55,188 INFO L290 TraceCheckUtils]: 40: Hoare triple {2560#false} assume 0 == ~cond; {2560#false} is VALID [2022-04-08 05:28:55,188 INFO L290 TraceCheckUtils]: 41: Hoare triple {2560#false} assume !false; {2560#false} is VALID [2022-04-08 05:28:55,188 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 05:28:55,188 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:28:55,371 INFO L290 TraceCheckUtils]: 41: Hoare triple {2560#false} assume !false; {2560#false} is VALID [2022-04-08 05:28:55,371 INFO L290 TraceCheckUtils]: 40: Hoare triple {2560#false} assume 0 == ~cond; {2560#false} is VALID [2022-04-08 05:28:55,371 INFO L290 TraceCheckUtils]: 39: Hoare triple {2560#false} ~cond := #in~cond; {2560#false} is VALID [2022-04-08 05:28:55,371 INFO L272 TraceCheckUtils]: 38: Hoare triple {2560#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2560#false} is VALID [2022-04-08 05:28:55,372 INFO L290 TraceCheckUtils]: 37: Hoare triple {2702#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {2560#false} is VALID [2022-04-08 05:28:55,372 INFO L290 TraceCheckUtils]: 36: Hoare triple {2706#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2702#(< |main_#t~post6| 10)} is VALID [2022-04-08 05:28:55,372 INFO L290 TraceCheckUtils]: 35: Hoare triple {2706#(< ~counter~0 10)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,372 INFO L290 TraceCheckUtils]: 34: Hoare triple {2706#(< ~counter~0 10)} assume !!(~a~0 != ~b~0); {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,373 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2559#true} {2706#(< ~counter~0 10)} #72#return; {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,373 INFO L290 TraceCheckUtils]: 32: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-08 05:28:55,373 INFO L290 TraceCheckUtils]: 31: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-08 05:28:55,373 INFO L290 TraceCheckUtils]: 30: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-08 05:28:55,373 INFO L272 TraceCheckUtils]: 29: Hoare triple {2706#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2559#true} is VALID [2022-04-08 05:28:55,374 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2559#true} {2706#(< ~counter~0 10)} #70#return; {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,374 INFO L290 TraceCheckUtils]: 27: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-08 05:28:55,374 INFO L290 TraceCheckUtils]: 26: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-08 05:28:55,374 INFO L290 TraceCheckUtils]: 25: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-08 05:28:55,374 INFO L272 TraceCheckUtils]: 24: Hoare triple {2706#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2559#true} is VALID [2022-04-08 05:28:55,375 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2559#true} {2706#(< ~counter~0 10)} #68#return; {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,375 INFO L290 TraceCheckUtils]: 22: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-08 05:28:55,375 INFO L290 TraceCheckUtils]: 21: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-08 05:28:55,375 INFO L290 TraceCheckUtils]: 20: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-08 05:28:55,375 INFO L272 TraceCheckUtils]: 19: Hoare triple {2706#(< ~counter~0 10)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2559#true} is VALID [2022-04-08 05:28:55,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {2706#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,376 INFO L290 TraceCheckUtils]: 17: Hoare triple {2764#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2706#(< ~counter~0 10)} is VALID [2022-04-08 05:28:55,376 INFO L290 TraceCheckUtils]: 16: Hoare triple {2764#(< ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,376 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2559#true} {2764#(< ~counter~0 9)} #66#return; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-08 05:28:55,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L290 TraceCheckUtils]: 12: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L272 TraceCheckUtils]: 11: Hoare triple {2764#(< ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2559#true} {2764#(< ~counter~0 9)} #64#return; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,377 INFO L290 TraceCheckUtils]: 9: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L290 TraceCheckUtils]: 7: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L272 TraceCheckUtils]: 6: Hoare triple {2764#(< ~counter~0 9)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2559#true} is VALID [2022-04-08 05:28:55,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {2764#(< ~counter~0 9)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,378 INFO L272 TraceCheckUtils]: 4: Hoare triple {2764#(< ~counter~0 9)} call #t~ret7 := main(); {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2764#(< ~counter~0 9)} {2559#true} #82#return; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,378 INFO L290 TraceCheckUtils]: 2: Hoare triple {2764#(< ~counter~0 9)} assume true; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,380 INFO L290 TraceCheckUtils]: 1: Hoare triple {2559#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2764#(< ~counter~0 9)} is VALID [2022-04-08 05:28:55,380 INFO L272 TraceCheckUtils]: 0: Hoare triple {2559#true} call ULTIMATE.init(); {2559#true} is VALID [2022-04-08 05:28:55,380 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 05:28:55,380 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:55,380 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1368217007] [2022-04-08 05:28:55,380 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:28:55,380 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [558752790] [2022-04-08 05:28:55,380 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [558752790] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:28:55,380 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:28:55,380 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-08 05:28:55,381 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:55,381 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [558505043] [2022-04-08 05:28:55,381 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [558505043] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:55,381 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:55,381 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:55,381 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [154542858] [2022-04-08 05:28:55,381 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:55,381 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), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-08 05:28:55,382 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:55,382 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), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 05:28:55,400 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 05:28:55,400 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:55,400 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:55,401 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:55,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:28:55,401 INFO L87 Difference]: Start difference. First operand 78 states and 109 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 05:28:55,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:55,562 INFO L93 Difference]: Finished difference Result 121 states and 152 transitions. [2022-04-08 05:28:55,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:28:55,562 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), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-08 05:28:55,562 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:55,563 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), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 05:28:55,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 74 transitions. [2022-04-08 05:28:55,564 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), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 05:28:55,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 74 transitions. [2022-04-08 05:28:55,565 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 74 transitions. [2022-04-08 05:28:55,608 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:55,610 INFO L225 Difference]: With dead ends: 121 [2022-04-08 05:28:55,610 INFO L226 Difference]: Without dead ends: 102 [2022-04-08 05:28:55,611 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:28:55,611 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 13 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:55,611 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 118 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:28:55,612 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-08 05:28:55,667 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 100. [2022-04-08 05:28:55,667 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:55,668 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:55,668 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:55,668 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:55,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:55,672 INFO L93 Difference]: Finished difference Result 102 states and 128 transitions. [2022-04-08 05:28:55,672 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 128 transitions. [2022-04-08 05:28:55,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:55,672 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:55,674 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 102 states. [2022-04-08 05:28:55,674 INFO L87 Difference]: Start difference. First operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 102 states. [2022-04-08 05:28:55,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:55,678 INFO L93 Difference]: Finished difference Result 102 states and 128 transitions. [2022-04-08 05:28:55,678 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 128 transitions. [2022-04-08 05:28:55,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:55,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:55,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:55,679 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:55,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-08 05:28:55,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 127 transitions. [2022-04-08 05:28:55,682 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 127 transitions. Word has length 42 [2022-04-08 05:28:55,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:55,684 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 127 transitions. [2022-04-08 05:28:55,684 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), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 05:28:55,684 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 100 states and 127 transitions. [2022-04-08 05:28:55,786 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:55,787 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-08 05:28:55,787 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-08 05:28:55,787 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:55,787 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-08 05:28:55,814 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 05:28:56,003 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:56,004 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:56,004 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:56,004 INFO L85 PathProgramCache]: Analyzing trace with hash -1083409702, now seen corresponding path program 1 times [2022-04-08 05:28:56,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:56,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [326105924] [2022-04-08 05:28:56,004 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:56,004 INFO L85 PathProgramCache]: Analyzing trace with hash -1083409702, now seen corresponding path program 2 times [2022-04-08 05:28:56,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:56,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1496803683] [2022-04-08 05:28:56,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:56,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:56,015 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:56,015 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [218055157] [2022-04-08 05:28:56,015 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:56,015 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:56,015 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:56,016 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 05:28:56,017 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 05:28:56,052 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:28:56,052 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:56,053 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 05:28:56,064 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:56,065 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:56,223 INFO L272 TraceCheckUtils]: 0: Hoare triple {3466#true} call ULTIMATE.init(); {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 1: Hoare triple {3466#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 2: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3466#true} {3466#true} #82#return; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L272 TraceCheckUtils]: 4: Hoare triple {3466#true} call #t~ret7 := main(); {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 5: Hoare triple {3466#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L272 TraceCheckUtils]: 6: Hoare triple {3466#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 7: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 8: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 9: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3466#true} {3466#true} #64#return; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L272 TraceCheckUtils]: 11: Hoare triple {3466#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 12: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 13: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-08 05:28:56,224 INFO L290 TraceCheckUtils]: 14: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-08 05:28:56,225 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3466#true} {3466#true} #66#return; {3466#true} is VALID [2022-04-08 05:28:56,225 INFO L290 TraceCheckUtils]: 16: Hoare triple {3466#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,225 INFO L290 TraceCheckUtils]: 17: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,226 INFO L290 TraceCheckUtils]: 18: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,226 INFO L272 TraceCheckUtils]: 19: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3466#true} is VALID [2022-04-08 05:28:56,226 INFO L290 TraceCheckUtils]: 20: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-08 05:28:56,226 INFO L290 TraceCheckUtils]: 21: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-08 05:28:56,226 INFO L290 TraceCheckUtils]: 22: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-08 05:28:56,226 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3466#true} {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #68#return; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,226 INFO L272 TraceCheckUtils]: 24: Hoare triple {3519#(and (= main_~s~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)); {3466#true} is VALID [2022-04-08 05:28:56,227 INFO L290 TraceCheckUtils]: 25: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-08 05:28:56,227 INFO L290 TraceCheckUtils]: 26: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-08 05:28:56,227 INFO L290 TraceCheckUtils]: 27: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-08 05:28:56,229 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3466#true} {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #70#return; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,229 INFO L272 TraceCheckUtils]: 29: Hoare triple {3519#(and (= main_~s~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)); {3466#true} is VALID [2022-04-08 05:28:56,229 INFO L290 TraceCheckUtils]: 30: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-08 05:28:56,229 INFO L290 TraceCheckUtils]: 31: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-08 05:28:56,229 INFO L290 TraceCheckUtils]: 32: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-08 05:28:56,230 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3466#true} {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #72#return; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,230 INFO L290 TraceCheckUtils]: 34: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,231 INFO L290 TraceCheckUtils]: 35: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,231 INFO L290 TraceCheckUtils]: 36: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,231 INFO L290 TraceCheckUtils]: 37: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:28:56,232 INFO L272 TraceCheckUtils]: 38: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3586#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:56,232 INFO L290 TraceCheckUtils]: 39: Hoare triple {3586#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3590#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:56,233 INFO L290 TraceCheckUtils]: 40: Hoare triple {3590#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3467#false} is VALID [2022-04-08 05:28:56,233 INFO L290 TraceCheckUtils]: 41: Hoare triple {3467#false} assume !false; {3467#false} is VALID [2022-04-08 05:28:56,233 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 05:28:56,233 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:28:56,233 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:28:56,233 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1496803683] [2022-04-08 05:28:56,233 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:28:56,233 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [218055157] [2022-04-08 05:28:56,233 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [218055157] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:56,233 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:56,233 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:56,234 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:28:56,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [326105924] [2022-04-08 05:28:56,234 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [326105924] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:28:56,234 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:28:56,234 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:28:56,234 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1970322590] [2022-04-08 05:28:56,234 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:28:56,234 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 42 [2022-04-08 05:28:56,234 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:28:56,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 05:28:56,251 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 05:28:56,252 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:28:56,252 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:56,252 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:28:56,252 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:28:56,252 INFO L87 Difference]: Start difference. First operand 100 states and 127 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 05:28:56,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:56,431 INFO L93 Difference]: Finished difference Result 106 states and 132 transitions. [2022-04-08 05:28:56,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:28:56,431 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 42 [2022-04-08 05:28:56,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:28:56,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 05:28:56,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 62 transitions. [2022-04-08 05:28:56,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 05:28:56,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 62 transitions. [2022-04-08 05:28:56,433 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 62 transitions. [2022-04-08 05:28:56,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:28:56,474 INFO L225 Difference]: With dead ends: 106 [2022-04-08 05:28:56,474 INFO L226 Difference]: Without dead ends: 103 [2022-04-08 05:28:56,474 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 37 SyntacticMatches, 1 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 05:28:56,474 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 7 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:28:56,475 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 132 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:28:56,475 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-04-08 05:28:56,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 103. [2022-04-08 05:28:56,526 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:28:56,530 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 05:28:56,530 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 05:28:56,531 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 05:28:56,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:56,535 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2022-04-08 05:28:56,535 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-08 05:28:56,535 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:56,535 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:56,536 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 103 states. [2022-04-08 05:28:56,536 INFO L87 Difference]: Start difference. First operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 103 states. [2022-04-08 05:28:56,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:28:56,539 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2022-04-08 05:28:56,540 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-08 05:28:56,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:28:56,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:28:56,540 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:28:56,540 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:28:56,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 05:28:56,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 128 transitions. [2022-04-08 05:28:56,545 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 128 transitions. Word has length 42 [2022-04-08 05:28:56,545 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:28:56,545 INFO L478 AbstractCegarLoop]: Abstraction has 103 states and 128 transitions. [2022-04-08 05:28:56,545 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 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 05:28:56,545 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 128 transitions. [2022-04-08 05:28:56,661 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 05:28:56,661 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-08 05:28:56,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-08 05:28:56,662 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:28:56,662 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:28:56,679 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-08 05:28:56,871 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:56,872 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:28:56,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:28:56,872 INFO L85 PathProgramCache]: Analyzing trace with hash -1376219446, now seen corresponding path program 1 times [2022-04-08 05:28:56,872 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:28:56,872 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1750558664] [2022-04-08 05:28:56,873 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:28:56,873 INFO L85 PathProgramCache]: Analyzing trace with hash -1376219446, now seen corresponding path program 2 times [2022-04-08 05:28:56,873 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:28:56,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [341954602] [2022-04-08 05:28:56,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:28:56,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:28:56,887 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:28:56,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1814164476] [2022-04-08 05:28:56,888 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:28:56,888 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:28:56,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:28:56,894 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 05:28:56,896 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 05:28:56,929 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:28:56,929 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:28:56,930 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 05:28:56,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:28:56,946 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:28:57,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {4222#true} call ULTIMATE.init(); {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {4222#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4222#true} {4222#true} #82#return; {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {4222#true} call #t~ret7 := main(); {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L290 TraceCheckUtils]: 5: Hoare triple {4222#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L272 TraceCheckUtils]: 6: Hoare triple {4222#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L290 TraceCheckUtils]: 7: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L290 TraceCheckUtils]: 8: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:28:57,064 INFO L290 TraceCheckUtils]: 9: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4222#true} {4222#true} #64#return; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L272 TraceCheckUtils]: 11: Hoare triple {4222#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 12: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 13: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 14: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4222#true} {4222#true} #66#return; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 16: Hoare triple {4222#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 17: Hoare triple {4222#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {4222#true} assume !!(#t~post6 < 10);havoc #t~post6; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L272 TraceCheckUtils]: 19: Hoare triple {4222#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 20: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 21: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L290 TraceCheckUtils]: 22: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4222#true} {4222#true} #68#return; {4222#true} is VALID [2022-04-08 05:28:57,065 INFO L272 TraceCheckUtils]: 24: Hoare triple {4222#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:28:57,070 INFO L290 TraceCheckUtils]: 25: Hoare triple {4222#true} ~cond := #in~cond; {4302#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:57,070 INFO L290 TraceCheckUtils]: 26: Hoare triple {4302#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:28:57,071 INFO L290 TraceCheckUtils]: 27: Hoare triple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:28:57,071 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} {4222#true} #70#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:28:57,072 INFO L272 TraceCheckUtils]: 29: Hoare triple {4313#(= main_~a~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)); {4222#true} is VALID [2022-04-08 05:28:57,072 INFO L290 TraceCheckUtils]: 30: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:28:57,072 INFO L290 TraceCheckUtils]: 31: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:28:57,072 INFO L290 TraceCheckUtils]: 32: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:28:57,072 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4222#true} {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #72#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:28:57,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:28:57,073 INFO L272 TraceCheckUtils]: 35: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:28:57,073 INFO L290 TraceCheckUtils]: 36: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:28:57,073 INFO L290 TraceCheckUtils]: 37: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:28:57,073 INFO L290 TraceCheckUtils]: 38: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:28:57,073 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4222#true} {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:28:57,074 INFO L272 TraceCheckUtils]: 40: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:28:57,074 INFO L290 TraceCheckUtils]: 41: Hoare triple {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4355#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:28:57,075 INFO L290 TraceCheckUtils]: 42: Hoare triple {4355#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4223#false} is VALID [2022-04-08 05:28:57,075 INFO L290 TraceCheckUtils]: 43: Hoare triple {4223#false} assume !false; {4223#false} is VALID [2022-04-08 05:28:57,075 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 05:28:57,075 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:29:19,409 INFO L290 TraceCheckUtils]: 43: Hoare triple {4223#false} assume !false; {4223#false} is VALID [2022-04-08 05:29:19,410 INFO L290 TraceCheckUtils]: 42: Hoare triple {4355#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4223#false} is VALID [2022-04-08 05:29:19,410 INFO L290 TraceCheckUtils]: 41: Hoare triple {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4355#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:19,411 INFO L272 TraceCheckUtils]: 40: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:29:19,412 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4222#true} {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:19,412 INFO L290 TraceCheckUtils]: 38: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:29:19,412 INFO L290 TraceCheckUtils]: 37: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:29:19,412 INFO L290 TraceCheckUtils]: 36: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:29:19,412 INFO L272 TraceCheckUtils]: 35: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:29:19,415 INFO L290 TraceCheckUtils]: 34: Hoare triple {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:19,416 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4222#true} {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #72#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:19,416 INFO L290 TraceCheckUtils]: 32: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:29:19,416 INFO L290 TraceCheckUtils]: 31: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:29:19,416 INFO L290 TraceCheckUtils]: 30: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:29:19,416 INFO L272 TraceCheckUtils]: 29: Hoare triple {4313#(= main_~a~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)); {4222#true} is VALID [2022-04-08 05:29:19,417 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} {4222#true} #70#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:19,417 INFO L290 TraceCheckUtils]: 27: Hoare triple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 26: Hoare triple {4416#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 25: Hoare triple {4222#true} ~cond := #in~cond; {4416#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:29:19,418 INFO L272 TraceCheckUtils]: 24: Hoare triple {4222#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4222#true} {4222#true} #68#return; {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 22: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 21: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 20: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L272 TraceCheckUtils]: 19: Hoare triple {4222#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 18: Hoare triple {4222#true} assume !!(#t~post6 < 10);havoc #t~post6; {4222#true} is VALID [2022-04-08 05:29:19,418 INFO L290 TraceCheckUtils]: 17: Hoare triple {4222#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 16: Hoare triple {4222#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4222#true} {4222#true} #66#return; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 14: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 13: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 12: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L272 TraceCheckUtils]: 11: Hoare triple {4222#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4222#true} {4222#true} #64#return; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 9: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 8: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 7: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L272 TraceCheckUtils]: 6: Hoare triple {4222#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-08 05:29:19,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {4222#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {4222#true} is VALID [2022-04-08 05:29:19,420 INFO L272 TraceCheckUtils]: 4: Hoare triple {4222#true} call #t~ret7 := main(); {4222#true} is VALID [2022-04-08 05:29:19,420 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4222#true} {4222#true} #82#return; {4222#true} is VALID [2022-04-08 05:29:19,420 INFO L290 TraceCheckUtils]: 2: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-08 05:29:19,420 INFO L290 TraceCheckUtils]: 1: Hoare triple {4222#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4222#true} is VALID [2022-04-08 05:29:19,420 INFO L272 TraceCheckUtils]: 0: Hoare triple {4222#true} call ULTIMATE.init(); {4222#true} is VALID [2022-04-08 05:29:19,420 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 05:29:19,420 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:29:19,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [341954602] [2022-04-08 05:29:19,420 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:29:19,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1814164476] [2022-04-08 05:29:19,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1814164476] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:29:19,420 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:29:19,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 05:29:19,421 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:29:19,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1750558664] [2022-04-08 05:29:19,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1750558664] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:29:19,421 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:29:19,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:29:19,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [282662453] [2022-04-08 05:29:19,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:29:19,422 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-08 05:29:19,422 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:29:19,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 05:29:19,442 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 05:29:19,442 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:29:19,442 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:29:19,442 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:29:19,442 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:29:19,443 INFO L87 Difference]: Start difference. First operand 103 states and 128 transitions. Second operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 05:29:20,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:29:20,073 INFO L93 Difference]: Finished difference Result 118 states and 148 transitions. [2022-04-08 05:29:20,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:29:20,073 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-08 05:29:20,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:29:20,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 05:29:20,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-04-08 05:29:20,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 05:29:20,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-04-08 05:29:20,076 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 60 transitions. [2022-04-08 05:29:20,120 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 05:29:20,122 INFO L225 Difference]: With dead ends: 118 [2022-04-08 05:29:20,122 INFO L226 Difference]: Without dead ends: 106 [2022-04-08 05:29:20,125 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:29:20,126 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 15 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 165 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 165 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:29:20,126 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 141 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 165 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:29:20,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-04-08 05:29:20,191 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 104. [2022-04-08 05:29:20,191 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:29:20,192 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 05:29:20,192 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 05:29:20,193 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 05:29:20,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:29:20,200 INFO L93 Difference]: Finished difference Result 106 states and 133 transitions. [2022-04-08 05:29:20,200 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 133 transitions. [2022-04-08 05:29:20,201 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:29:20,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:29:20,202 INFO L74 IsIncluded]: Start isIncluded. First operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) Second operand 106 states. [2022-04-08 05:29:20,202 INFO L87 Difference]: Start difference. First operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) Second operand 106 states. [2022-04-08 05:29:20,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:29:20,205 INFO L93 Difference]: Finished difference Result 106 states and 133 transitions. [2022-04-08 05:29:20,206 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 133 transitions. [2022-04-08 05:29:20,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:29:20,206 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:29:20,206 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:29:20,206 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:29:20,206 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 05:29:20,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 130 transitions. [2022-04-08 05:29:20,210 INFO L78 Accepts]: Start accepts. Automaton has 104 states and 130 transitions. Word has length 44 [2022-04-08 05:29:20,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:29:20,210 INFO L478 AbstractCegarLoop]: Abstraction has 104 states and 130 transitions. [2022-04-08 05:29:20,210 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 05:29:20,210 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 104 states and 130 transitions. [2022-04-08 05:29:20,349 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:29:20,350 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 130 transitions. [2022-04-08 05:29:20,350 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 05:29:20,350 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:29:20,350 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:29:20,367 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 05:29:20,550 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:29:20,551 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:29:20,551 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:29:20,551 INFO L85 PathProgramCache]: Analyzing trace with hash -1137310021, now seen corresponding path program 3 times [2022-04-08 05:29:20,551 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:29:20,551 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1777155733] [2022-04-08 05:29:20,552 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:29:20,552 INFO L85 PathProgramCache]: Analyzing trace with hash -1137310021, now seen corresponding path program 4 times [2022-04-08 05:29:20,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:29:20,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1684431700] [2022-04-08 05:29:20,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:29:20,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:29:20,561 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:29:20,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1350098585] [2022-04-08 05:29:20,561 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:29:20,561 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:29:20,561 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:29:20,562 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 05:29:20,563 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 05:29:20,600 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:29:20,600 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:29:20,601 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-08 05:29:20,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:29:20,612 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:29:21,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {5156#true} call ULTIMATE.init(); {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L290 TraceCheckUtils]: 1: Hoare triple {5156#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5156#true} {5156#true} #82#return; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L272 TraceCheckUtils]: 4: Hoare triple {5156#true} call #t~ret7 := main(); {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L290 TraceCheckUtils]: 5: Hoare triple {5156#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L272 TraceCheckUtils]: 6: Hoare triple {5156#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L290 TraceCheckUtils]: 7: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L290 TraceCheckUtils]: 8: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L290 TraceCheckUtils]: 9: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5156#true} {5156#true} #64#return; {5156#true} is VALID [2022-04-08 05:29:21,027 INFO L272 TraceCheckUtils]: 11: Hoare triple {5156#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:21,028 INFO L290 TraceCheckUtils]: 12: Hoare triple {5156#true} ~cond := #in~cond; {5197#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:29:21,028 INFO L290 TraceCheckUtils]: 13: Hoare triple {5197#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5201#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:29:21,028 INFO L290 TraceCheckUtils]: 14: Hoare triple {5201#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5201#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:29:21,029 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5201#(not (= |assume_abort_if_not_#in~cond| 0))} {5156#true} #66#return; {5208#(<= 1 main_~y~0)} is VALID [2022-04-08 05:29:21,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {5208#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:29:21,030 INFO L290 TraceCheckUtils]: 17: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:29:21,030 INFO L290 TraceCheckUtils]: 18: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:29:21,030 INFO L272 TraceCheckUtils]: 19: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:21,030 INFO L290 TraceCheckUtils]: 20: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:21,030 INFO L290 TraceCheckUtils]: 21: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:21,030 INFO L290 TraceCheckUtils]: 22: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:21,031 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5156#true} {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} #68#return; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:29:21,031 INFO L272 TraceCheckUtils]: 24: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:21,031 INFO L290 TraceCheckUtils]: 25: Hoare triple {5156#true} ~cond := #in~cond; {5240#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:21,032 INFO L290 TraceCheckUtils]: 26: Hoare triple {5240#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:21,032 INFO L290 TraceCheckUtils]: 27: Hoare triple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:21,034 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} #70#return; {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} is VALID [2022-04-08 05:29:21,034 INFO L272 TraceCheckUtils]: 29: Hoare triple {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:21,034 INFO L290 TraceCheckUtils]: 30: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:21,034 INFO L290 TraceCheckUtils]: 31: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:21,034 INFO L290 TraceCheckUtils]: 32: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:21,035 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5156#true} {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} #72#return; {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} is VALID [2022-04-08 05:29:21,035 INFO L290 TraceCheckUtils]: 34: Hoare triple {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} assume !!(~a~0 != ~b~0); {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} is VALID [2022-04-08 05:29:21,036 INFO L290 TraceCheckUtils]: 35: Hoare triple {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~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_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:29:21,037 INFO L290 TraceCheckUtils]: 36: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:29:21,037 INFO L290 TraceCheckUtils]: 37: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:29:21,037 INFO L272 TraceCheckUtils]: 38: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:21,037 INFO L290 TraceCheckUtils]: 39: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:21,037 INFO L290 TraceCheckUtils]: 40: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:21,037 INFO L290 TraceCheckUtils]: 41: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:21,038 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5156#true} {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} #68#return; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:29:21,038 INFO L272 TraceCheckUtils]: 43: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:29:21,039 INFO L290 TraceCheckUtils]: 44: Hoare triple {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5302#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:21,039 INFO L290 TraceCheckUtils]: 45: Hoare triple {5302#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5157#false} is VALID [2022-04-08 05:29:21,039 INFO L290 TraceCheckUtils]: 46: Hoare triple {5157#false} assume !false; {5157#false} is VALID [2022-04-08 05:29:21,039 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 13 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 05:29:21,039 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:29:36,384 INFO L290 TraceCheckUtils]: 46: Hoare triple {5157#false} assume !false; {5157#false} is VALID [2022-04-08 05:29:36,385 INFO L290 TraceCheckUtils]: 45: Hoare triple {5302#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5157#false} is VALID [2022-04-08 05:29:36,385 INFO L290 TraceCheckUtils]: 44: Hoare triple {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5302#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:36,386 INFO L272 TraceCheckUtils]: 43: Hoare triple {5318#(= 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)); {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:29:36,386 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5156#true} {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:36,387 INFO L290 TraceCheckUtils]: 41: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:36,387 INFO L290 TraceCheckUtils]: 40: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:36,387 INFO L290 TraceCheckUtils]: 39: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:36,387 INFO L272 TraceCheckUtils]: 38: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:36,387 INFO L290 TraceCheckUtils]: 37: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:36,387 INFO L290 TraceCheckUtils]: 36: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:37,711 INFO L290 TraceCheckUtils]: 35: Hoare triple {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:29:37,712 INFO L290 TraceCheckUtils]: 34: Hoare triple {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:29:37,712 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5156#true} {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:29:37,712 INFO L290 TraceCheckUtils]: 32: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:37,712 INFO L290 TraceCheckUtils]: 31: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:37,712 INFO L290 TraceCheckUtils]: 30: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:37,714 INFO L272 TraceCheckUtils]: 29: Hoare triple {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:37,715 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #70#return; {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:29:37,715 INFO L290 TraceCheckUtils]: 27: Hoare triple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:37,715 INFO L290 TraceCheckUtils]: 26: Hoare triple {5375#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:37,716 INFO L290 TraceCheckUtils]: 25: Hoare triple {5156#true} ~cond := #in~cond; {5375#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:29:37,716 INFO L272 TraceCheckUtils]: 24: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~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)); {5156#true} is VALID [2022-04-08 05:29:37,716 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5156#true} {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #68#return; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:29:37,716 INFO L290 TraceCheckUtils]: 22: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:37,717 INFO L290 TraceCheckUtils]: 21: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:37,717 INFO L290 TraceCheckUtils]: 20: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:37,717 INFO L272 TraceCheckUtils]: 19: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:37,717 INFO L290 TraceCheckUtils]: 18: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 17: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 16: Hoare triple {5156#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:29:37,718 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5156#true} {5156#true} #66#return; {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 14: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 13: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 12: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L272 TraceCheckUtils]: 11: Hoare triple {5156#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5156#true} {5156#true} #64#return; {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 9: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 8: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-08 05:29:37,718 INFO L290 TraceCheckUtils]: 7: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L272 TraceCheckUtils]: 6: Hoare triple {5156#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {5156#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L272 TraceCheckUtils]: 4: Hoare triple {5156#true} call #t~ret7 := main(); {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5156#true} {5156#true} #82#return; {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L290 TraceCheckUtils]: 2: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {5156#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L272 TraceCheckUtils]: 0: Hoare triple {5156#true} call ULTIMATE.init(); {5156#true} is VALID [2022-04-08 05:29:37,719 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 05:29:37,719 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:29:37,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1684431700] [2022-04-08 05:29:37,719 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:29:37,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1350098585] [2022-04-08 05:29:37,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1350098585] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:29:37,720 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:29:37,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 9] total 16 [2022-04-08 05:29:37,720 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:29:37,720 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1777155733] [2022-04-08 05:29:37,720 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1777155733] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:29:37,720 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:29:37,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 05:29:37,720 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [930599363] [2022-04-08 05:29:37,720 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:29:37,720 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) Word has length 47 [2022-04-08 05:29:37,721 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:29:37,721 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 05:29:37,751 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:29:37,751 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 05:29:37,751 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:29:37,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 05:29:37,752 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=197, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:29:37,752 INFO L87 Difference]: Start difference. First operand 104 states and 130 transitions. Second operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 05:29:39,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:29:39,059 INFO L93 Difference]: Finished difference Result 131 states and 169 transitions. [2022-04-08 05:29:39,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:29:39,059 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) Word has length 47 [2022-04-08 05:29:39,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:29:39,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 05:29:39,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 75 transitions. [2022-04-08 05:29:39,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 05:29:39,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 75 transitions. [2022-04-08 05:29:39,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 75 transitions. [2022-04-08 05:29:39,125 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 05:29:39,127 INFO L225 Difference]: With dead ends: 131 [2022-04-08 05:29:39,127 INFO L226 Difference]: Without dead ends: 129 [2022-04-08 05:29:39,128 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 78 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=282, Unknown=0, NotChecked=0, Total=342 [2022-04-08 05:29:39,128 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 34 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 350 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 367 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 350 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-08 05:29:39,128 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 170 Invalid, 367 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 350 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-08 05:29:39,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-08 05:29:39,221 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 124. [2022-04-08 05:29:39,221 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:29:39,221 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 05:29:39,221 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 05:29:39,222 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 05:29:39,224 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:29:39,224 INFO L93 Difference]: Finished difference Result 129 states and 167 transitions. [2022-04-08 05:29:39,224 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 167 transitions. [2022-04-08 05:29:39,225 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:29:39,225 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:29:39,225 INFO L74 IsIncluded]: Start isIncluded. First operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 129 states. [2022-04-08 05:29:39,225 INFO L87 Difference]: Start difference. First operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 129 states. [2022-04-08 05:29:39,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:29:39,228 INFO L93 Difference]: Finished difference Result 129 states and 167 transitions. [2022-04-08 05:29:39,228 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 167 transitions. [2022-04-08 05:29:39,228 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:29:39,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:29:39,228 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:29:39,228 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:29:39,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 05:29:39,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 158 transitions. [2022-04-08 05:29:39,231 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 158 transitions. Word has length 47 [2022-04-08 05:29:39,231 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:29:39,231 INFO L478 AbstractCegarLoop]: Abstraction has 124 states and 158 transitions. [2022-04-08 05:29:39,231 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 05:29:39,231 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 124 states and 158 transitions. [2022-04-08 05:29:39,396 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:29:39,396 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 158 transitions. [2022-04-08 05:29:39,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-08 05:29:39,397 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:29:39,397 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:29:39,419 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 05:29:39,597 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,SelfDestructingSolverStorable9 [2022-04-08 05:29:39,597 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:29:39,598 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:29:39,598 INFO L85 PathProgramCache]: Analyzing trace with hash -1475439812, now seen corresponding path program 1 times [2022-04-08 05:29:39,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:29:39,598 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1851860798] [2022-04-08 05:29:39,598 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:29:39,598 INFO L85 PathProgramCache]: Analyzing trace with hash -1475439812, now seen corresponding path program 2 times [2022-04-08 05:29:39,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:29:39,599 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [563235307] [2022-04-08 05:29:39,599 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:29:39,599 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:29:39,608 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:29:39,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2023635294] [2022-04-08 05:29:39,608 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:29:39,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:29:39,608 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:29:39,616 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 05:29:39,640 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 05:29:39,664 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:29:39,664 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:29:39,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 05:29:39,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:29:39,677 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:29:40,052 INFO L272 TraceCheckUtils]: 0: Hoare triple {6227#true} call ULTIMATE.init(); {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 1: Hoare triple {6227#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 2: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6227#true} {6227#true} #82#return; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L272 TraceCheckUtils]: 4: Hoare triple {6227#true} call #t~ret7 := main(); {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 5: Hoare triple {6227#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L272 TraceCheckUtils]: 6: Hoare triple {6227#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6227#true} {6227#true} #64#return; {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L272 TraceCheckUtils]: 11: Hoare triple {6227#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,053 INFO L290 TraceCheckUtils]: 12: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:29:40,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:29:40,054 INFO L290 TraceCheckUtils]: 14: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:29:40,054 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6227#true} {6227#true} #66#return; {6227#true} is VALID [2022-04-08 05:29:40,054 INFO L290 TraceCheckUtils]: 16: Hoare triple {6227#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6280#(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 05:29:40,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6280#(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 05:29:40,055 INFO L290 TraceCheckUtils]: 18: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {6280#(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 05:29:40,055 INFO L272 TraceCheckUtils]: 19: Hoare triple {6280#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,055 INFO L290 TraceCheckUtils]: 20: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:29:40,055 INFO L290 TraceCheckUtils]: 21: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:29:40,055 INFO L290 TraceCheckUtils]: 22: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:29:40,056 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6227#true} {6280#(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))} #68#return; {6280#(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 05:29:40,056 INFO L272 TraceCheckUtils]: 24: Hoare triple {6280#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,056 INFO L290 TraceCheckUtils]: 25: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:29:40,056 INFO L290 TraceCheckUtils]: 26: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:29:40,056 INFO L290 TraceCheckUtils]: 27: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:29:40,056 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6227#true} {6280#(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))} #70#return; {6280#(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 05:29:40,057 INFO L272 TraceCheckUtils]: 29: Hoare triple {6280#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,057 INFO L290 TraceCheckUtils]: 30: Hoare triple {6227#true} ~cond := #in~cond; {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:40,057 INFO L290 TraceCheckUtils]: 31: Hoare triple {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:40,057 INFO L290 TraceCheckUtils]: 32: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:40,058 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6280#(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))} #72#return; {6280#(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 05:29:40,058 INFO L290 TraceCheckUtils]: 34: Hoare triple {6280#(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 !!(~a~0 != ~b~0); {6280#(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 05:29:40,059 INFO L290 TraceCheckUtils]: 35: Hoare triple {6280#(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 !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:29:40,059 INFO L290 TraceCheckUtils]: 36: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:29:40,060 INFO L290 TraceCheckUtils]: 37: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:29:40,060 INFO L272 TraceCheckUtils]: 38: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,060 INFO L290 TraceCheckUtils]: 39: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:29:40,060 INFO L290 TraceCheckUtils]: 40: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:29:40,060 INFO L290 TraceCheckUtils]: 41: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:29:40,061 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6227#true} {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #68#return; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:29:40,061 INFO L272 TraceCheckUtils]: 43: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:29:40,061 INFO L290 TraceCheckUtils]: 44: Hoare triple {6227#true} ~cond := #in~cond; {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:40,061 INFO L290 TraceCheckUtils]: 45: Hoare triple {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:40,061 INFO L290 TraceCheckUtils]: 46: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:29:40,062 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #70#return; {6377#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0))} is VALID [2022-04-08 05:29:40,063 INFO L272 TraceCheckUtils]: 48: Hoare triple {6377#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:29:40,063 INFO L290 TraceCheckUtils]: 49: Hoare triple {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6385#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:29:40,063 INFO L290 TraceCheckUtils]: 50: Hoare triple {6385#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6228#false} is VALID [2022-04-08 05:29:40,063 INFO L290 TraceCheckUtils]: 51: Hoare triple {6228#false} assume !false; {6228#false} is VALID [2022-04-08 05:29:40,064 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 23 proven. 10 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-08 05:29:40,064 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:30:38,052 INFO L290 TraceCheckUtils]: 51: Hoare triple {6228#false} assume !false; {6228#false} is VALID [2022-04-08 05:30:38,052 INFO L290 TraceCheckUtils]: 50: Hoare triple {6385#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6228#false} is VALID [2022-04-08 05:30:38,053 INFO L290 TraceCheckUtils]: 49: Hoare triple {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6385#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:30:38,053 INFO L272 TraceCheckUtils]: 48: Hoare triple {6401#(= 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)); {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:30:38,054 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6405#(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)))))} #70#return; {6401#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:30:38,055 INFO L290 TraceCheckUtils]: 46: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:30:38,055 INFO L290 TraceCheckUtils]: 45: Hoare triple {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:30:38,055 INFO L290 TraceCheckUtils]: 44: Hoare triple {6227#true} ~cond := #in~cond; {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:30:38,055 INFO L272 TraceCheckUtils]: 43: Hoare triple {6405#(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)); {6227#true} is VALID [2022-04-08 05:30:38,056 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6227#true} {6405#(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)))))} #68#return; {6405#(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 05:30:38,056 INFO L290 TraceCheckUtils]: 41: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:30:38,056 INFO L290 TraceCheckUtils]: 40: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:30:38,056 INFO L290 TraceCheckUtils]: 39: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:30:38,056 INFO L272 TraceCheckUtils]: 38: Hoare triple {6405#(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 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:30:38,057 INFO L290 TraceCheckUtils]: 37: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {6405#(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 05:30:38,057 INFO L290 TraceCheckUtils]: 36: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6405#(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 05:30:38,406 INFO L290 TraceCheckUtils]: 35: Hoare triple {6405#(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 !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {6405#(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 05:30:38,406 INFO L290 TraceCheckUtils]: 34: Hoare triple {6405#(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 !!(~a~0 != ~b~0); {6405#(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 05:30:38,407 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6227#true} #72#return; {6405#(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 05:30:38,408 INFO L290 TraceCheckUtils]: 32: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:30:38,408 INFO L290 TraceCheckUtils]: 31: Hoare triple {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:30:38,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {6227#true} ~cond := #in~cond; {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:30:38,408 INFO L272 TraceCheckUtils]: 29: Hoare triple {6227#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:30:38,408 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6227#true} {6227#true} #70#return; {6227#true} is VALID [2022-04-08 05:30:38,408 INFO L290 TraceCheckUtils]: 27: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:30:38,408 INFO L290 TraceCheckUtils]: 26: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:30:38,408 INFO L290 TraceCheckUtils]: 25: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:30:38,408 INFO L272 TraceCheckUtils]: 24: Hoare triple {6227#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6227#true} {6227#true} #68#return; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 22: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 21: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 20: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L272 TraceCheckUtils]: 19: Hoare triple {6227#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 18: Hoare triple {6227#true} assume !!(#t~post6 < 10);havoc #t~post6; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {6227#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 16: Hoare triple {6227#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6227#true} {6227#true} #66#return; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 14: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 13: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 12: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L272 TraceCheckUtils]: 11: Hoare triple {6227#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6227#true} {6227#true} #64#return; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 9: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 8: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L290 TraceCheckUtils]: 7: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-08 05:30:38,409 INFO L272 TraceCheckUtils]: 6: Hoare triple {6227#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L290 TraceCheckUtils]: 5: Hoare triple {6227#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L272 TraceCheckUtils]: 4: Hoare triple {6227#true} call #t~ret7 := main(); {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6227#true} {6227#true} #82#return; {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {6227#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L272 TraceCheckUtils]: 0: Hoare triple {6227#true} call ULTIMATE.init(); {6227#true} is VALID [2022-04-08 05:30:38,410 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 28 proven. 5 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-08 05:30:38,410 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:30:38,410 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [563235307] [2022-04-08 05:30:38,410 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:30:38,410 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2023635294] [2022-04-08 05:30:38,410 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2023635294] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:30:38,410 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:30:38,411 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-08 05:30:38,411 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:30:38,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1851860798] [2022-04-08 05:30:38,411 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1851860798] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:30:38,411 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:30:38,411 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:30:38,411 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1860824698] [2022-04-08 05:30:38,411 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:30:38,411 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 52 [2022-04-08 05:30:38,411 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:30:38,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 05:30:38,444 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:30:38,444 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:30:38,444 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:30:38,445 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:30:38,445 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=99, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:30:38,445 INFO L87 Difference]: Start difference. First operand 124 states and 158 transitions. Second operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 05:30:39,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:39,357 INFO L93 Difference]: Finished difference Result 160 states and 210 transitions. [2022-04-08 05:30:39,357 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:30:39,357 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 52 [2022-04-08 05:30:39,357 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:30:39,357 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 05:30:39,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 94 transitions. [2022-04-08 05:30:39,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 05:30:39,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 94 transitions. [2022-04-08 05:30:39,360 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 94 transitions. [2022-04-08 05:30:39,459 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:30:39,463 INFO L225 Difference]: With dead ends: 160 [2022-04-08 05:30:39,463 INFO L226 Difference]: Without dead ends: 153 [2022-04-08 05:30:39,463 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 91 SyntacticMatches, 2 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=136, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:30:39,464 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 24 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 231 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 256 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 231 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:30:39,464 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 132 Invalid, 256 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 231 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:30:39,464 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2022-04-08 05:30:39,567 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 153. [2022-04-08 05:30:39,567 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:30:39,567 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:39,568 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:39,568 INFO L87 Difference]: Start difference. First operand 153 states. Second operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:39,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:39,571 INFO L93 Difference]: Finished difference Result 153 states and 198 transitions. [2022-04-08 05:30:39,571 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 198 transitions. [2022-04-08 05:30:39,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:30:39,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:30:39,572 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 153 states. [2022-04-08 05:30:39,572 INFO L87 Difference]: Start difference. First operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 153 states. [2022-04-08 05:30:39,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:39,575 INFO L93 Difference]: Finished difference Result 153 states and 198 transitions. [2022-04-08 05:30:39,575 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 198 transitions. [2022-04-08 05:30:39,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:30:39,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:30:39,575 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:30:39,575 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:30:39,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:39,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 198 transitions. [2022-04-08 05:30:39,579 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 198 transitions. Word has length 52 [2022-04-08 05:30:39,579 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:30:39,579 INFO L478 AbstractCegarLoop]: Abstraction has 153 states and 198 transitions. [2022-04-08 05:30:39,579 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 05:30:39,579 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 153 states and 198 transitions. [2022-04-08 05:30:39,793 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 198 edges. 198 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:30:39,793 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 198 transitions. [2022-04-08 05:30:39,794 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-08 05:30:39,794 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:30:39,794 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] [2022-04-08 05:30:39,811 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 05:30:39,994 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:30:39,994 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:30:39,995 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:30:39,995 INFO L85 PathProgramCache]: Analyzing trace with hash 220857665, now seen corresponding path program 3 times [2022-04-08 05:30:39,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:30:39,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1457218982] [2022-04-08 05:30:39,995 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:30:39,995 INFO L85 PathProgramCache]: Analyzing trace with hash 220857665, now seen corresponding path program 4 times [2022-04-08 05:30:39,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:30:39,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [220690874] [2022-04-08 05:30:39,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:30:39,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:30:40,020 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:30:40,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1834830342] [2022-04-08 05:30:40,021 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:30:40,021 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:30:40,021 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:30:40,022 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 05:30:40,030 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 05:30:40,079 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:30:40,080 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:30:40,081 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:30:40,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:30:40,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:30:40,328 INFO L272 TraceCheckUtils]: 0: Hoare triple {7486#true} call ULTIMATE.init(); {7486#true} is VALID [2022-04-08 05:30:40,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {7486#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,329 INFO L290 TraceCheckUtils]: 2: Hoare triple {7494#(<= ~counter~0 0)} assume true; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,330 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7494#(<= ~counter~0 0)} {7486#true} #82#return; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,330 INFO L272 TraceCheckUtils]: 4: Hoare triple {7494#(<= ~counter~0 0)} call #t~ret7 := main(); {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,330 INFO L290 TraceCheckUtils]: 5: Hoare triple {7494#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,331 INFO L272 TraceCheckUtils]: 6: Hoare triple {7494#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,331 INFO L290 TraceCheckUtils]: 7: Hoare triple {7494#(<= ~counter~0 0)} ~cond := #in~cond; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,331 INFO L290 TraceCheckUtils]: 8: Hoare triple {7494#(<= ~counter~0 0)} assume !(0 == ~cond); {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,332 INFO L290 TraceCheckUtils]: 9: Hoare triple {7494#(<= ~counter~0 0)} assume true; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,332 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7494#(<= ~counter~0 0)} {7494#(<= ~counter~0 0)} #64#return; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,332 INFO L272 TraceCheckUtils]: 11: Hoare triple {7494#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {7494#(<= ~counter~0 0)} ~cond := #in~cond; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {7494#(<= ~counter~0 0)} assume !(0 == ~cond); {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,333 INFO L290 TraceCheckUtils]: 14: Hoare triple {7494#(<= ~counter~0 0)} assume true; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,333 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7494#(<= ~counter~0 0)} {7494#(<= ~counter~0 0)} #66#return; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,334 INFO L290 TraceCheckUtils]: 16: Hoare triple {7494#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7494#(<= ~counter~0 0)} is VALID [2022-04-08 05:30:40,334 INFO L290 TraceCheckUtils]: 17: Hoare triple {7494#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,335 INFO L290 TraceCheckUtils]: 18: Hoare triple {7543#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,335 INFO L272 TraceCheckUtils]: 19: Hoare triple {7543#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,335 INFO L290 TraceCheckUtils]: 20: Hoare triple {7543#(<= ~counter~0 1)} ~cond := #in~cond; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,336 INFO L290 TraceCheckUtils]: 21: Hoare triple {7543#(<= ~counter~0 1)} assume !(0 == ~cond); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,336 INFO L290 TraceCheckUtils]: 22: Hoare triple {7543#(<= ~counter~0 1)} assume true; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,336 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7543#(<= ~counter~0 1)} {7543#(<= ~counter~0 1)} #68#return; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,337 INFO L272 TraceCheckUtils]: 24: Hoare triple {7543#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,337 INFO L290 TraceCheckUtils]: 25: Hoare triple {7543#(<= ~counter~0 1)} ~cond := #in~cond; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,338 INFO L290 TraceCheckUtils]: 26: Hoare triple {7543#(<= ~counter~0 1)} assume !(0 == ~cond); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,338 INFO L290 TraceCheckUtils]: 27: Hoare triple {7543#(<= ~counter~0 1)} assume true; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,339 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7543#(<= ~counter~0 1)} {7543#(<= ~counter~0 1)} #70#return; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,340 INFO L272 TraceCheckUtils]: 29: Hoare triple {7543#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,340 INFO L290 TraceCheckUtils]: 30: Hoare triple {7543#(<= ~counter~0 1)} ~cond := #in~cond; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,340 INFO L290 TraceCheckUtils]: 31: Hoare triple {7543#(<= ~counter~0 1)} assume !(0 == ~cond); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,341 INFO L290 TraceCheckUtils]: 32: Hoare triple {7543#(<= ~counter~0 1)} assume true; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,341 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7543#(<= ~counter~0 1)} {7543#(<= ~counter~0 1)} #72#return; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,341 INFO L290 TraceCheckUtils]: 34: Hoare triple {7543#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,342 INFO L290 TraceCheckUtils]: 35: Hoare triple {7543#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7543#(<= ~counter~0 1)} is VALID [2022-04-08 05:30:40,342 INFO L290 TraceCheckUtils]: 36: Hoare triple {7543#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,342 INFO L290 TraceCheckUtils]: 37: Hoare triple {7601#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,343 INFO L272 TraceCheckUtils]: 38: Hoare triple {7601#(<= ~counter~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,343 INFO L290 TraceCheckUtils]: 39: Hoare triple {7601#(<= ~counter~0 2)} ~cond := #in~cond; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,343 INFO L290 TraceCheckUtils]: 40: Hoare triple {7601#(<= ~counter~0 2)} assume !(0 == ~cond); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,344 INFO L290 TraceCheckUtils]: 41: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,344 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {7601#(<= ~counter~0 2)} {7601#(<= ~counter~0 2)} #68#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,345 INFO L272 TraceCheckUtils]: 43: Hoare triple {7601#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,345 INFO L290 TraceCheckUtils]: 44: Hoare triple {7601#(<= ~counter~0 2)} ~cond := #in~cond; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,346 INFO L290 TraceCheckUtils]: 45: Hoare triple {7601#(<= ~counter~0 2)} assume !(0 == ~cond); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,346 INFO L290 TraceCheckUtils]: 46: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,346 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7601#(<= ~counter~0 2)} {7601#(<= ~counter~0 2)} #70#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,347 INFO L272 TraceCheckUtils]: 48: Hoare triple {7601#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,347 INFO L290 TraceCheckUtils]: 49: Hoare triple {7601#(<= ~counter~0 2)} ~cond := #in~cond; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,347 INFO L290 TraceCheckUtils]: 50: Hoare triple {7601#(<= ~counter~0 2)} assume !(0 == ~cond); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,348 INFO L290 TraceCheckUtils]: 51: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,348 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {7601#(<= ~counter~0 2)} {7601#(<= ~counter~0 2)} #72#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,348 INFO L290 TraceCheckUtils]: 53: Hoare triple {7601#(<= ~counter~0 2)} assume !!(~a~0 != ~b~0); {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,349 INFO L290 TraceCheckUtils]: 54: Hoare triple {7601#(<= ~counter~0 2)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7601#(<= ~counter~0 2)} is VALID [2022-04-08 05:30:40,349 INFO L290 TraceCheckUtils]: 55: Hoare triple {7601#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7659#(<= |main_#t~post6| 2)} is VALID [2022-04-08 05:30:40,349 INFO L290 TraceCheckUtils]: 56: Hoare triple {7659#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {7487#false} is VALID [2022-04-08 05:30:40,349 INFO L272 TraceCheckUtils]: 57: Hoare triple {7487#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {7487#false} is VALID [2022-04-08 05:30:40,349 INFO L290 TraceCheckUtils]: 58: Hoare triple {7487#false} ~cond := #in~cond; {7487#false} is VALID [2022-04-08 05:30:40,350 INFO L290 TraceCheckUtils]: 59: Hoare triple {7487#false} assume 0 == ~cond; {7487#false} is VALID [2022-04-08 05:30:40,350 INFO L290 TraceCheckUtils]: 60: Hoare triple {7487#false} assume !false; {7487#false} is VALID [2022-04-08 05:30:40,350 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 47 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 05:30:40,350 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:30:40,562 INFO L290 TraceCheckUtils]: 60: Hoare triple {7487#false} assume !false; {7487#false} is VALID [2022-04-08 05:30:40,563 INFO L290 TraceCheckUtils]: 59: Hoare triple {7487#false} assume 0 == ~cond; {7487#false} is VALID [2022-04-08 05:30:40,563 INFO L290 TraceCheckUtils]: 58: Hoare triple {7487#false} ~cond := #in~cond; {7487#false} is VALID [2022-04-08 05:30:40,563 INFO L272 TraceCheckUtils]: 57: Hoare triple {7487#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {7487#false} is VALID [2022-04-08 05:30:40,563 INFO L290 TraceCheckUtils]: 56: Hoare triple {7687#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {7487#false} is VALID [2022-04-08 05:30:40,563 INFO L290 TraceCheckUtils]: 55: Hoare triple {7691#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7687#(< |main_#t~post6| 10)} is VALID [2022-04-08 05:30:40,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {7691#(< ~counter~0 10)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,580 INFO L290 TraceCheckUtils]: 53: Hoare triple {7691#(< ~counter~0 10)} assume !!(~a~0 != ~b~0); {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,580 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {7486#true} {7691#(< ~counter~0 10)} #72#return; {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,580 INFO L290 TraceCheckUtils]: 51: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,580 INFO L290 TraceCheckUtils]: 50: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,580 INFO L290 TraceCheckUtils]: 49: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,580 INFO L272 TraceCheckUtils]: 48: Hoare triple {7691#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7486#true} {7691#(< ~counter~0 10)} #70#return; {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,581 INFO L290 TraceCheckUtils]: 46: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L290 TraceCheckUtils]: 45: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L290 TraceCheckUtils]: 44: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L272 TraceCheckUtils]: 43: Hoare triple {7691#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {7486#true} {7691#(< ~counter~0 10)} #68#return; {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,581 INFO L290 TraceCheckUtils]: 41: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L290 TraceCheckUtils]: 40: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,581 INFO L290 TraceCheckUtils]: 39: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,582 INFO L272 TraceCheckUtils]: 38: Hoare triple {7691#(< ~counter~0 10)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,582 INFO L290 TraceCheckUtils]: 37: Hoare triple {7691#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {7749#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7691#(< ~counter~0 10)} is VALID [2022-04-08 05:30:40,582 INFO L290 TraceCheckUtils]: 35: Hoare triple {7749#(< ~counter~0 9)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,583 INFO L290 TraceCheckUtils]: 34: Hoare triple {7749#(< ~counter~0 9)} assume !!(~a~0 != ~b~0); {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,583 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7486#true} {7749#(< ~counter~0 9)} #72#return; {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,583 INFO L290 TraceCheckUtils]: 32: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,583 INFO L290 TraceCheckUtils]: 31: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,583 INFO L290 TraceCheckUtils]: 30: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,583 INFO L272 TraceCheckUtils]: 29: Hoare triple {7749#(< ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7486#true} {7749#(< ~counter~0 9)} #70#return; {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,584 INFO L290 TraceCheckUtils]: 27: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L272 TraceCheckUtils]: 24: Hoare triple {7749#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7486#true} {7749#(< ~counter~0 9)} #68#return; {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,584 INFO L290 TraceCheckUtils]: 22: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L290 TraceCheckUtils]: 21: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,584 INFO L272 TraceCheckUtils]: 19: Hoare triple {7749#(< ~counter~0 9)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,585 INFO L290 TraceCheckUtils]: 18: Hoare triple {7749#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,585 INFO L290 TraceCheckUtils]: 17: Hoare triple {7807#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7749#(< ~counter~0 9)} is VALID [2022-04-08 05:30:40,585 INFO L290 TraceCheckUtils]: 16: Hoare triple {7807#(< ~counter~0 8)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,586 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7486#true} {7807#(< ~counter~0 8)} #66#return; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,586 INFO L290 TraceCheckUtils]: 14: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L290 TraceCheckUtils]: 12: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L272 TraceCheckUtils]: 11: Hoare triple {7807#(< ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7486#true} {7807#(< ~counter~0 8)} #64#return; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L290 TraceCheckUtils]: 8: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L290 TraceCheckUtils]: 7: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-08 05:30:40,586 INFO L272 TraceCheckUtils]: 6: Hoare triple {7807#(< ~counter~0 8)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7486#true} is VALID [2022-04-08 05:30:40,587 INFO L290 TraceCheckUtils]: 5: Hoare triple {7807#(< ~counter~0 8)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,587 INFO L272 TraceCheckUtils]: 4: Hoare triple {7807#(< ~counter~0 8)} call #t~ret7 := main(); {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7807#(< ~counter~0 8)} {7486#true} #82#return; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {7807#(< ~counter~0 8)} assume true; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {7486#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7807#(< ~counter~0 8)} is VALID [2022-04-08 05:30:40,588 INFO L272 TraceCheckUtils]: 0: Hoare triple {7486#true} call ULTIMATE.init(); {7486#true} is VALID [2022-04-08 05:30:40,588 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 11 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 05:30:40,588 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:30:40,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [220690874] [2022-04-08 05:30:40,588 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:30:40,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1834830342] [2022-04-08 05:30:40,588 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1834830342] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:30:40,588 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:30:40,589 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 05:30:40,589 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:30:40,589 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1457218982] [2022-04-08 05:30:40,589 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1457218982] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:30:40,589 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:30:40,589 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:30:40,589 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1638968525] [2022-04-08 05:30:40,589 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:30:40,589 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-08 05:30:40,589 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:30:40,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:30:40,622 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 05:30:40,622 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:30:40,622 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:30:40,622 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:30:40,622 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:30:40,623 INFO L87 Difference]: Start difference. First operand 153 states and 198 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:30:40,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:40,886 INFO L93 Difference]: Finished difference Result 199 states and 251 transitions. [2022-04-08 05:30:40,886 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 05:30:40,886 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-08 05:30:40,886 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:30:40,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:30:40,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-04-08 05:30:40,887 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:30:40,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-04-08 05:30:40,888 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 82 transitions. [2022-04-08 05:30:40,949 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:30:40,952 INFO L225 Difference]: With dead ends: 199 [2022-04-08 05:30:40,952 INFO L226 Difference]: Without dead ends: 173 [2022-04-08 05:30:40,952 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 113 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:30:40,953 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 8 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:30:40,953 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 136 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:30:40,953 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2022-04-08 05:30:41,097 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 173. [2022-04-08 05:30:41,097 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:30:41,097 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:41,098 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:41,098 INFO L87 Difference]: Start difference. First operand 173 states. Second operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:41,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:41,101 INFO L93 Difference]: Finished difference Result 173 states and 215 transitions. [2022-04-08 05:30:41,101 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 215 transitions. [2022-04-08 05:30:41,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:30:41,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:30:41,102 INFO L74 IsIncluded]: Start isIncluded. First operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-08 05:30:41,102 INFO L87 Difference]: Start difference. First operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-08 05:30:41,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:41,105 INFO L93 Difference]: Finished difference Result 173 states and 215 transitions. [2022-04-08 05:30:41,105 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 215 transitions. [2022-04-08 05:30:41,105 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:30:41,105 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:30:41,105 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:30:41,105 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:30:41,108 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:30:41,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 215 transitions. [2022-04-08 05:30:41,112 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 215 transitions. Word has length 61 [2022-04-08 05:30:41,112 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:30:41,112 INFO L478 AbstractCegarLoop]: Abstraction has 173 states and 215 transitions. [2022-04-08 05:30:41,112 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:30:41,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 173 states and 215 transitions. [2022-04-08 05:30:41,330 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:30:41,330 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 215 transitions. [2022-04-08 05:30:41,331 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-08 05:30:41,331 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:30:41,331 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:30:41,348 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 05:30:41,535 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,SelfDestructingSolverStorable11 [2022-04-08 05:30:41,537 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:30:41,538 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:30:41,538 INFO L85 PathProgramCache]: Analyzing trace with hash 1997533323, now seen corresponding path program 1 times [2022-04-08 05:30:41,538 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:30:41,538 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2024730971] [2022-04-08 05:30:41,538 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:30:41,538 INFO L85 PathProgramCache]: Analyzing trace with hash 1997533323, now seen corresponding path program 2 times [2022-04-08 05:30:41,538 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:30:41,538 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [103312218] [2022-04-08 05:30:41,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:30:41,539 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:30:41,547 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:30:41,547 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [73999409] [2022-04-08 05:30:41,548 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:30:41,548 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:30:41,548 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:30:41,548 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 05:30:41,549 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 05:30:41,587 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:30:41,588 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:30:41,589 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 05:30:41,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:30:41,599 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:30:41,926 INFO L272 TraceCheckUtils]: 0: Hoare triple {8955#true} call ULTIMATE.init(); {8955#true} is VALID [2022-04-08 05:30:41,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {8955#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8955#true} is VALID [2022-04-08 05:30:41,926 INFO L290 TraceCheckUtils]: 2: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,926 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8955#true} {8955#true} #82#return; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L272 TraceCheckUtils]: 4: Hoare triple {8955#true} call #t~ret7 := main(); {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 5: Hoare triple {8955#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L272 TraceCheckUtils]: 6: Hoare triple {8955#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 7: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 8: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 9: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8955#true} {8955#true} #64#return; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L272 TraceCheckUtils]: 11: Hoare triple {8955#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 12: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 13: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L290 TraceCheckUtils]: 14: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,927 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8955#true} {8955#true} #66#return; {8955#true} is VALID [2022-04-08 05:30:41,928 INFO L290 TraceCheckUtils]: 16: Hoare triple {8955#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,928 INFO L272 TraceCheckUtils]: 19: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L290 TraceCheckUtils]: 22: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8955#true} {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #68#return; {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,929 INFO L272 TraceCheckUtils]: 24: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~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)); {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L290 TraceCheckUtils]: 25: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L290 TraceCheckUtils]: 26: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,929 INFO L290 TraceCheckUtils]: 27: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,930 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8955#true} {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #70#return; {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,930 INFO L272 TraceCheckUtils]: 29: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~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)); {8955#true} is VALID [2022-04-08 05:30:41,930 INFO L290 TraceCheckUtils]: 30: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,930 INFO L290 TraceCheckUtils]: 31: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,930 INFO L290 TraceCheckUtils]: 32: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,931 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8955#true} {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #72#return; {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:41,932 INFO L290 TraceCheckUtils]: 35: Hoare triple {9008#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,932 INFO L290 TraceCheckUtils]: 36: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,932 INFO L290 TraceCheckUtils]: 37: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,932 INFO L272 TraceCheckUtils]: 38: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:41,932 INFO L290 TraceCheckUtils]: 39: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,932 INFO L290 TraceCheckUtils]: 40: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,933 INFO L290 TraceCheckUtils]: 41: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,933 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8955#true} {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #68#return; {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,933 INFO L272 TraceCheckUtils]: 43: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:41,933 INFO L290 TraceCheckUtils]: 44: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,933 INFO L290 TraceCheckUtils]: 45: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,933 INFO L290 TraceCheckUtils]: 46: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,934 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8955#true} {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #70#return; {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,934 INFO L272 TraceCheckUtils]: 48: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:41,934 INFO L290 TraceCheckUtils]: 49: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:41,934 INFO L290 TraceCheckUtils]: 50: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:41,934 INFO L290 TraceCheckUtils]: 51: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:41,935 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8955#true} {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #72#return; {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,935 INFO L290 TraceCheckUtils]: 53: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:30:41,935 INFO L290 TraceCheckUtils]: 54: Hoare triple {9066#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {9124#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 05:30:41,936 INFO L290 TraceCheckUtils]: 55: Hoare triple {9124#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9124#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 05:30:41,936 INFO L290 TraceCheckUtils]: 56: Hoare triple {9124#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {9124#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 05:30:41,937 INFO L272 TraceCheckUtils]: 57: Hoare triple {9124#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9134#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:30:41,937 INFO L290 TraceCheckUtils]: 58: Hoare triple {9134#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9138#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:30:41,937 INFO L290 TraceCheckUtils]: 59: Hoare triple {9138#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8956#false} is VALID [2022-04-08 05:30:41,938 INFO L290 TraceCheckUtils]: 60: Hoare triple {8956#false} assume !false; {8956#false} is VALID [2022-04-08 05:30:41,938 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 13 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 05:30:41,938 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:30:42,164 INFO L290 TraceCheckUtils]: 60: Hoare triple {8956#false} assume !false; {8956#false} is VALID [2022-04-08 05:30:42,164 INFO L290 TraceCheckUtils]: 59: Hoare triple {9138#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8956#false} is VALID [2022-04-08 05:30:42,165 INFO L290 TraceCheckUtils]: 58: Hoare triple {9134#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9138#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:30:42,165 INFO L272 TraceCheckUtils]: 57: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9134#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:30:42,166 INFO L290 TraceCheckUtils]: 56: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 10);havoc #t~post6; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,166 INFO L290 TraceCheckUtils]: 55: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,168 INFO L290 TraceCheckUtils]: 54: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,169 INFO L290 TraceCheckUtils]: 53: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,170 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8955#true} {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #72#return; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,170 INFO L290 TraceCheckUtils]: 51: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,170 INFO L290 TraceCheckUtils]: 50: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,170 INFO L290 TraceCheckUtils]: 49: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,170 INFO L272 TraceCheckUtils]: 48: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,171 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8955#true} {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #70#return; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,171 INFO L290 TraceCheckUtils]: 46: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,171 INFO L290 TraceCheckUtils]: 45: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,171 INFO L290 TraceCheckUtils]: 44: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,171 INFO L272 TraceCheckUtils]: 43: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,172 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8955#true} {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #68#return; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,172 INFO L290 TraceCheckUtils]: 41: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,172 INFO L290 TraceCheckUtils]: 40: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,172 INFO L290 TraceCheckUtils]: 39: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,172 INFO L272 TraceCheckUtils]: 38: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,172 INFO L290 TraceCheckUtils]: 37: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 10);havoc #t~post6; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,173 INFO L290 TraceCheckUtils]: 36: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,175 INFO L290 TraceCheckUtils]: 35: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,175 INFO L290 TraceCheckUtils]: 34: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,176 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8955#true} {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #72#return; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,176 INFO L290 TraceCheckUtils]: 32: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,176 INFO L272 TraceCheckUtils]: 29: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,178 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8955#true} {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #70#return; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,178 INFO L290 TraceCheckUtils]: 27: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,178 INFO L290 TraceCheckUtils]: 26: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,178 INFO L290 TraceCheckUtils]: 25: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,178 INFO L272 TraceCheckUtils]: 24: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,179 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8955#true} {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #68#return; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,179 INFO L290 TraceCheckUtils]: 22: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,179 INFO L272 TraceCheckUtils]: 19: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,180 INFO L290 TraceCheckUtils]: 18: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 10);havoc #t~post6; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,180 INFO L290 TraceCheckUtils]: 17: Hoare triple {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,180 INFO L290 TraceCheckUtils]: 16: Hoare triple {8955#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9154#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-08 05:30:42,180 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8955#true} {8955#true} #66#return; {8955#true} is VALID [2022-04-08 05:30:42,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 12: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L272 TraceCheckUtils]: 11: Hoare triple {8955#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8955#true} {8955#true} #64#return; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 9: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 8: Hoare triple {8955#true} assume !(0 == ~cond); {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 7: Hoare triple {8955#true} ~cond := #in~cond; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L272 TraceCheckUtils]: 6: Hoare triple {8955#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 5: Hoare triple {8955#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L272 TraceCheckUtils]: 4: Hoare triple {8955#true} call #t~ret7 := main(); {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8955#true} {8955#true} #82#return; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 2: Hoare triple {8955#true} assume true; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L290 TraceCheckUtils]: 1: Hoare triple {8955#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {8955#true} call ULTIMATE.init(); {8955#true} is VALID [2022-04-08 05:30:42,181 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 77 trivial. 0 not checked. [2022-04-08 05:30:42,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:30:42,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [103312218] [2022-04-08 05:30:42,182 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:30:42,183 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [73999409] [2022-04-08 05:30:42,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [73999409] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:30:42,184 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:30:42,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [7] total 8 [2022-04-08 05:30:42,184 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:30:42,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2024730971] [2022-04-08 05:30:42,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2024730971] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:30:42,184 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:30:42,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:30:42,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1768879909] [2022-04-08 05:30:42,184 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:30:42,185 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 61 [2022-04-08 05:30:42,185 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:30:42,185 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 05:30:42,212 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 05:30:42,213 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:30:42,213 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:30:42,213 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:30:42,213 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:30:42,213 INFO L87 Difference]: Start difference. First operand 173 states and 215 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 05:30:42,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:42,511 INFO L93 Difference]: Finished difference Result 179 states and 220 transitions. [2022-04-08 05:30:42,511 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:30:42,512 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 61 [2022-04-08 05:30:42,512 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:30:42,512 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 05:30:42,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-08 05:30:42,513 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 05:30:42,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-08 05:30:42,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-08 05:30:42,548 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 05:30:42,552 INFO L225 Difference]: With dead ends: 179 [2022-04-08 05:30:42,552 INFO L226 Difference]: Without dead ends: 174 [2022-04-08 05:30:42,552 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 112 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:30:42,555 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 7 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:30:42,555 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 102 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:30:42,556 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-08 05:30:42,694 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 172. [2022-04-08 05:30:42,694 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:30:42,695 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 05:30:42,695 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 05:30:42,695 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 05:30:42,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:42,700 INFO L93 Difference]: Finished difference Result 174 states and 211 transitions. [2022-04-08 05:30:42,700 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 211 transitions. [2022-04-08 05:30:42,700 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:30:42,700 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:30:42,701 INFO L74 IsIncluded]: Start isIncluded. First operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) Second operand 174 states. [2022-04-08 05:30:42,701 INFO L87 Difference]: Start difference. First operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) Second operand 174 states. [2022-04-08 05:30:42,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:30:42,705 INFO L93 Difference]: Finished difference Result 174 states and 211 transitions. [2022-04-08 05:30:42,705 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 211 transitions. [2022-04-08 05:30:42,705 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:30:42,705 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:30:42,705 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:30:42,705 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:30:42,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 05:30:42,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 172 states to 172 states and 208 transitions. [2022-04-08 05:30:42,709 INFO L78 Accepts]: Start accepts. Automaton has 172 states and 208 transitions. Word has length 61 [2022-04-08 05:30:42,709 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:30:42,709 INFO L478 AbstractCegarLoop]: Abstraction has 172 states and 208 transitions. [2022-04-08 05:30:42,710 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 05:30:42,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 172 states and 208 transitions. [2022-04-08 05:30:42,943 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:30:42,943 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 208 transitions. [2022-04-08 05:30:42,945 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 05:30:42,945 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:30:42,945 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 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] [2022-04-08 05:30:42,962 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 05:30:43,147 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,SelfDestructingSolverStorable12 [2022-04-08 05:30:43,148 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:30:43,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:30:43,148 INFO L85 PathProgramCache]: Analyzing trace with hash 404368620, now seen corresponding path program 5 times [2022-04-08 05:30:43,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:30:43,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [100397372] [2022-04-08 05:30:43,148 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:30:43,148 INFO L85 PathProgramCache]: Analyzing trace with hash 404368620, now seen corresponding path program 6 times [2022-04-08 05:30:43,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:30:43,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1586307813] [2022-04-08 05:30:43,149 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:30:43,149 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:30:43,157 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:30:43,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1429215357] [2022-04-08 05:30:43,158 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:30:43,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:30:43,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:30:43,159 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 05:30:43,160 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 05:30:43,214 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:30:43,214 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:30:43,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-08 05:30:43,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:30:43,228 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:30:43,714 INFO L272 TraceCheckUtils]: 0: Hoare triple {10380#true} call ULTIMATE.init(); {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 1: Hoare triple {10380#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10380#true} {10380#true} #82#return; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L272 TraceCheckUtils]: 4: Hoare triple {10380#true} call #t~ret7 := main(); {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 5: Hoare triple {10380#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L272 TraceCheckUtils]: 6: Hoare triple {10380#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 7: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 8: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 9: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10380#true} {10380#true} #64#return; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L272 TraceCheckUtils]: 11: Hoare triple {10380#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 12: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 13: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L290 TraceCheckUtils]: 14: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,715 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10380#true} {10380#true} #66#return; {10380#true} is VALID [2022-04-08 05:30:43,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {10380#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10433#(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 05:30:43,716 INFO L290 TraceCheckUtils]: 17: Hoare triple {10433#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10433#(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 05:30:43,717 INFO L290 TraceCheckUtils]: 18: Hoare triple {10433#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {10433#(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 05:30:43,717 INFO L272 TraceCheckUtils]: 19: Hoare triple {10433#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,717 INFO L290 TraceCheckUtils]: 20: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,717 INFO L290 TraceCheckUtils]: 21: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,717 INFO L290 TraceCheckUtils]: 22: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,718 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10380#true} {10433#(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))} #68#return; {10433#(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 05:30:43,718 INFO L272 TraceCheckUtils]: 24: Hoare triple {10433#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,718 INFO L290 TraceCheckUtils]: 25: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,718 INFO L290 TraceCheckUtils]: 26: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,718 INFO L290 TraceCheckUtils]: 27: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,719 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10380#true} {10433#(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))} #70#return; {10433#(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 05:30:43,719 INFO L272 TraceCheckUtils]: 29: Hoare triple {10433#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,719 INFO L290 TraceCheckUtils]: 30: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,719 INFO L290 TraceCheckUtils]: 31: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,719 INFO L290 TraceCheckUtils]: 32: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,720 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {10380#true} {10433#(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))} #72#return; {10433#(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 05:30:43,720 INFO L290 TraceCheckUtils]: 34: Hoare triple {10433#(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 !!(~a~0 != ~b~0); {10433#(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 05:30:43,721 INFO L290 TraceCheckUtils]: 35: Hoare triple {10433#(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 ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,721 INFO L290 TraceCheckUtils]: 36: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,722 INFO L290 TraceCheckUtils]: 37: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,722 INFO L272 TraceCheckUtils]: 38: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,722 INFO L290 TraceCheckUtils]: 39: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,722 INFO L290 TraceCheckUtils]: 40: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,722 INFO L290 TraceCheckUtils]: 41: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,723 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10380#true} {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #68#return; {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,723 INFO L272 TraceCheckUtils]: 43: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,723 INFO L290 TraceCheckUtils]: 44: Hoare triple {10380#true} ~cond := #in~cond; {10519#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:30:43,723 INFO L290 TraceCheckUtils]: 45: Hoare triple {10519#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:30:43,724 INFO L290 TraceCheckUtils]: 46: Hoare triple {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:30:43,724 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #70#return; {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,724 INFO L272 TraceCheckUtils]: 48: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,724 INFO L290 TraceCheckUtils]: 49: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,725 INFO L290 TraceCheckUtils]: 50: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,725 INFO L290 TraceCheckUtils]: 51: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,725 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10380#true} {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #72#return; {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,726 INFO L290 TraceCheckUtils]: 53: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~a~0 != ~b~0); {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:30:43,726 INFO L290 TraceCheckUtils]: 54: Hoare triple {10491#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:43,727 INFO L290 TraceCheckUtils]: 55: Hoare triple {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:43,727 INFO L290 TraceCheckUtils]: 56: Hoare triple {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:43,727 INFO L272 TraceCheckUtils]: 57: Hoare triple {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:30:43,727 INFO L290 TraceCheckUtils]: 58: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:30:43,727 INFO L290 TraceCheckUtils]: 59: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:30:43,728 INFO L290 TraceCheckUtils]: 60: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:30:43,728 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {10380#true} {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} #68#return; {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:30:43,729 INFO L272 TraceCheckUtils]: 62: Hoare triple {10551#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) 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)); {10576#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:30:43,729 INFO L290 TraceCheckUtils]: 63: Hoare triple {10576#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10580#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:30:43,729 INFO L290 TraceCheckUtils]: 64: Hoare triple {10580#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10381#false} is VALID [2022-04-08 05:30:43,730 INFO L290 TraceCheckUtils]: 65: Hoare triple {10381#false} assume !false; {10381#false} is VALID [2022-04-08 05:30:43,730 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 25 proven. 22 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2022-04-08 05:30:43,730 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:31:08,258 INFO L290 TraceCheckUtils]: 65: Hoare triple {10381#false} assume !false; {10381#false} is VALID [2022-04-08 05:31:08,259 INFO L290 TraceCheckUtils]: 64: Hoare triple {10580#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10381#false} is VALID [2022-04-08 05:31:08,259 INFO L290 TraceCheckUtils]: 63: Hoare triple {10576#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10580#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:08,260 INFO L272 TraceCheckUtils]: 62: Hoare triple {10596#(= 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)); {10576#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:31:08,261 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {10380#true} {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:08,261 INFO L290 TraceCheckUtils]: 60: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:08,261 INFO L290 TraceCheckUtils]: 59: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:08,261 INFO L290 TraceCheckUtils]: 58: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:08,261 INFO L272 TraceCheckUtils]: 57: Hoare triple {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:08,261 INFO L290 TraceCheckUtils]: 56: Hoare triple {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:08,262 INFO L290 TraceCheckUtils]: 55: Hoare triple {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:10,263 WARN L290 TraceCheckUtils]: 54: Hoare triple {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10596#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is UNKNOWN [2022-04-08 05:31:10,264 INFO L290 TraceCheckUtils]: 53: Hoare triple {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:31:10,264 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10380#true} {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:31:10,265 INFO L290 TraceCheckUtils]: 51: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,265 INFO L290 TraceCheckUtils]: 50: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,265 INFO L290 TraceCheckUtils]: 49: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,265 INFO L272 TraceCheckUtils]: 48: Hoare triple {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,265 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #70#return; {10621#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:31:10,266 INFO L290 TraceCheckUtils]: 46: Hoare triple {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:10,266 INFO L290 TraceCheckUtils]: 45: Hoare triple {10653#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10523#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:10,266 INFO L290 TraceCheckUtils]: 44: Hoare triple {10380#true} ~cond := #in~cond; {10653#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:31:10,266 INFO L272 TraceCheckUtils]: 43: Hoare triple {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~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)); {10380#true} is VALID [2022-04-08 05:31:10,267 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10380#true} {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #68#return; {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:31:10,267 INFO L290 TraceCheckUtils]: 41: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,267 INFO L290 TraceCheckUtils]: 40: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,267 INFO L290 TraceCheckUtils]: 39: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,267 INFO L272 TraceCheckUtils]: 38: Hoare triple {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,268 INFO L290 TraceCheckUtils]: 37: Hoare triple {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:31:10,268 INFO L290 TraceCheckUtils]: 36: Hoare triple {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:31:10,461 INFO L290 TraceCheckUtils]: 35: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10643#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 05:31:10,462 INFO L290 TraceCheckUtils]: 34: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume !!(~a~0 != ~b~0); {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,463 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {10380#true} {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #72#return; {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,463 INFO L290 TraceCheckUtils]: 32: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,463 INFO L290 TraceCheckUtils]: 31: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,463 INFO L290 TraceCheckUtils]: 30: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,463 INFO L272 TraceCheckUtils]: 29: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,463 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10380#true} {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #70#return; {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,463 INFO L290 TraceCheckUtils]: 27: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L290 TraceCheckUtils]: 26: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L290 TraceCheckUtils]: 25: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L272 TraceCheckUtils]: 24: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10380#true} {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #68#return; {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,464 INFO L290 TraceCheckUtils]: 22: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L290 TraceCheckUtils]: 21: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L290 TraceCheckUtils]: 20: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,464 INFO L272 TraceCheckUtils]: 19: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,466 INFO L290 TraceCheckUtils]: 18: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume !!(#t~post6 < 10);havoc #t~post6; {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,466 INFO L290 TraceCheckUtils]: 17: Hoare triple {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 16: Hoare triple {10380#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10681#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-08 05:31:10,467 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10380#true} {10380#true} #66#return; {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 14: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 13: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 12: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L272 TraceCheckUtils]: 11: Hoare triple {10380#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10380#true} {10380#true} #64#return; {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {10380#true} assume !(0 == ~cond); {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L290 TraceCheckUtils]: 7: Hoare triple {10380#true} ~cond := #in~cond; {10380#true} is VALID [2022-04-08 05:31:10,467 INFO L272 TraceCheckUtils]: 6: Hoare triple {10380#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L290 TraceCheckUtils]: 5: Hoare triple {10380#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L272 TraceCheckUtils]: 4: Hoare triple {10380#true} call #t~ret7 := main(); {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10380#true} {10380#true} #82#return; {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {10380#true} assume true; {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {10380#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L272 TraceCheckUtils]: 0: Hoare triple {10380#true} call ULTIMATE.init(); {10380#true} is VALID [2022-04-08 05:31:10,468 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 29 proven. 18 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2022-04-08 05:31:10,468 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:31:10,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1586307813] [2022-04-08 05:31:10,468 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:31:10,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1429215357] [2022-04-08 05:31:10,469 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1429215357] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:31:10,469 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:31:10,469 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 14 [2022-04-08 05:31:10,469 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:31:10,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [100397372] [2022-04-08 05:31:10,469 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [100397372] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:31:10,469 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:31:10,469 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:31:10,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1595505589] [2022-04-08 05:31:10,469 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:31:10,469 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-08 05:31:10,470 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:31:10,470 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:10,511 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 05:31:10,512 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:31:10,512 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:31:10,512 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:31:10,512 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:31:10,512 INFO L87 Difference]: Start difference. First operand 172 states and 208 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:11,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:31:11,495 INFO L93 Difference]: Finished difference Result 199 states and 247 transitions. [2022-04-08 05:31:11,495 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:31:11,495 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-08 05:31:11,496 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:31:11,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:11,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-08 05:31:11,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:11,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-08 05:31:11,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2022-04-08 05:31:11,585 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:31:11,588 INFO L225 Difference]: With dead ends: 199 [2022-04-08 05:31:11,588 INFO L226 Difference]: Without dead ends: 197 [2022-04-08 05:31:11,589 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 117 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:31:11,589 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 15 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 334 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 192 SdHoareTripleChecker+Invalid, 341 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 334 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:31:11,589 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 192 Invalid, 341 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 334 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:31:11,589 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-08 05:31:11,730 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 181. [2022-04-08 05:31:11,731 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:31:11,731 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 05:31:11,731 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 05:31:11,732 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 05:31:11,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:31:11,735 INFO L93 Difference]: Finished difference Result 197 states and 245 transitions. [2022-04-08 05:31:11,735 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 245 transitions. [2022-04-08 05:31:11,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:31:11,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:31:11,736 INFO L74 IsIncluded]: Start isIncluded. First operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 197 states. [2022-04-08 05:31:11,736 INFO L87 Difference]: Start difference. First operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 197 states. [2022-04-08 05:31:11,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:31:11,740 INFO L93 Difference]: Finished difference Result 197 states and 245 transitions. [2022-04-08 05:31:11,740 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 245 transitions. [2022-04-08 05:31:11,740 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:31:11,740 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:31:11,740 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:31:11,740 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:31:11,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 05:31:11,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 181 states to 181 states and 220 transitions. [2022-04-08 05:31:11,744 INFO L78 Accepts]: Start accepts. Automaton has 181 states and 220 transitions. Word has length 66 [2022-04-08 05:31:11,744 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:31:11,744 INFO L478 AbstractCegarLoop]: Abstraction has 181 states and 220 transitions. [2022-04-08 05:31:11,744 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:11,744 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 181 states and 220 transitions. [2022-04-08 05:31:12,028 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 220 edges. 220 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:31:12,028 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 220 transitions. [2022-04-08 05:31:12,029 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 05:31:12,029 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:31:12,029 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 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] [2022-04-08 05:31:12,048 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 05:31:12,229 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,SelfDestructingSolverStorable13 [2022-04-08 05:31:12,230 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:31:12,230 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:31:12,230 INFO L85 PathProgramCache]: Analyzing trace with hash 1105968494, now seen corresponding path program 3 times [2022-04-08 05:31:12,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:31:12,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [779234282] [2022-04-08 05:31:12,230 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:31:12,230 INFO L85 PathProgramCache]: Analyzing trace with hash 1105968494, now seen corresponding path program 4 times [2022-04-08 05:31:12,231 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:31:12,231 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [893825970] [2022-04-08 05:31:12,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:31:12,231 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:31:12,238 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:31:12,239 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1953855575] [2022-04-08 05:31:12,239 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:31:12,239 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:31:12,239 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:31:12,240 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 05:31:12,241 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 05:31:12,282 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:31:12,283 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:31:12,284 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 05:31:12,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:31:12,295 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:31:12,766 INFO L272 TraceCheckUtils]: 0: Hoare triple {11947#true} call ULTIMATE.init(); {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {11947#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 2: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11947#true} {11947#true} #82#return; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L272 TraceCheckUtils]: 4: Hoare triple {11947#true} call #t~ret7 := main(); {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 5: Hoare triple {11947#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L272 TraceCheckUtils]: 6: Hoare triple {11947#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 7: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 8: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 9: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11947#true} {11947#true} #64#return; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L272 TraceCheckUtils]: 11: Hoare triple {11947#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 12: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 13: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L290 TraceCheckUtils]: 14: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,767 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11947#true} {11947#true} #66#return; {11947#true} is VALID [2022-04-08 05:31:12,769 INFO L290 TraceCheckUtils]: 16: Hoare triple {11947#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,770 INFO L290 TraceCheckUtils]: 17: Hoare triple {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,770 INFO L290 TraceCheckUtils]: 18: Hoare triple {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,770 INFO L272 TraceCheckUtils]: 19: Hoare triple {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,770 INFO L290 TraceCheckUtils]: 20: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,770 INFO L290 TraceCheckUtils]: 21: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,770 INFO L290 TraceCheckUtils]: 22: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,771 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11947#true} {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,771 INFO L272 TraceCheckUtils]: 24: Hoare triple {12000#(and (= main_~r~0 0) (= main_~s~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)); {11947#true} is VALID [2022-04-08 05:31:12,771 INFO L290 TraceCheckUtils]: 25: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,771 INFO L290 TraceCheckUtils]: 26: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,771 INFO L290 TraceCheckUtils]: 27: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,772 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11947#true} {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,772 INFO L272 TraceCheckUtils]: 29: Hoare triple {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,772 INFO L290 TraceCheckUtils]: 30: Hoare triple {11947#true} ~cond := #in~cond; {12043#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:12,772 INFO L290 TraceCheckUtils]: 31: Hoare triple {12043#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:12,772 INFO L290 TraceCheckUtils]: 32: Hoare triple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:12,773 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} {12000#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {12054#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,774 INFO L290 TraceCheckUtils]: 34: Hoare triple {12054#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {12054#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,774 INFO L290 TraceCheckUtils]: 35: Hoare triple {12054#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,775 INFO L290 TraceCheckUtils]: 37: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,775 INFO L272 TraceCheckUtils]: 38: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,775 INFO L290 TraceCheckUtils]: 39: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,776 INFO L290 TraceCheckUtils]: 40: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,776 INFO L290 TraceCheckUtils]: 41: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,776 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11947#true} {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #68#return; {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,776 INFO L272 TraceCheckUtils]: 43: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~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)); {11947#true} is VALID [2022-04-08 05:31:12,776 INFO L290 TraceCheckUtils]: 44: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,776 INFO L290 TraceCheckUtils]: 45: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,776 INFO L290 TraceCheckUtils]: 46: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,777 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11947#true} {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #70#return; {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,777 INFO L272 TraceCheckUtils]: 48: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,777 INFO L290 TraceCheckUtils]: 49: Hoare triple {11947#true} ~cond := #in~cond; {12043#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:12,778 INFO L290 TraceCheckUtils]: 50: Hoare triple {12043#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:12,778 INFO L290 TraceCheckUtils]: 51: Hoare triple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:12,778 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #72#return; {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,779 INFO L290 TraceCheckUtils]: 53: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:31:12,780 INFO L290 TraceCheckUtils]: 54: Hoare triple {12061#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-08 05:31:12,780 INFO L290 TraceCheckUtils]: 55: Hoare triple {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-08 05:31:12,780 INFO L290 TraceCheckUtils]: 56: Hoare triple {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-08 05:31:12,781 INFO L272 TraceCheckUtils]: 57: Hoare triple {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:12,781 INFO L290 TraceCheckUtils]: 58: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:12,781 INFO L290 TraceCheckUtils]: 59: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:12,781 INFO L290 TraceCheckUtils]: 60: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:12,781 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {11947#true} {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} #68#return; {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-08 05:31:12,782 INFO L272 TraceCheckUtils]: 62: Hoare triple {12119#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12144#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:31:12,782 INFO L290 TraceCheckUtils]: 63: Hoare triple {12144#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12148#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:12,782 INFO L290 TraceCheckUtils]: 64: Hoare triple {12148#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11948#false} is VALID [2022-04-08 05:31:12,783 INFO L290 TraceCheckUtils]: 65: Hoare triple {11948#false} assume !false; {11948#false} is VALID [2022-04-08 05:31:12,783 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 30 proven. 29 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2022-04-08 05:31:12,783 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:31:53,889 INFO L290 TraceCheckUtils]: 65: Hoare triple {11948#false} assume !false; {11948#false} is VALID [2022-04-08 05:31:53,889 INFO L290 TraceCheckUtils]: 64: Hoare triple {12148#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11948#false} is VALID [2022-04-08 05:31:53,890 INFO L290 TraceCheckUtils]: 63: Hoare triple {12144#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12148#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:53,890 INFO L272 TraceCheckUtils]: 62: Hoare triple {12164#(= 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)); {12144#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:31:53,891 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {11947#true} {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:53,891 INFO L290 TraceCheckUtils]: 60: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:53,891 INFO L290 TraceCheckUtils]: 59: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:53,891 INFO L290 TraceCheckUtils]: 58: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:53,891 INFO L272 TraceCheckUtils]: 57: Hoare triple {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:53,891 INFO L290 TraceCheckUtils]: 56: Hoare triple {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:53,892 INFO L290 TraceCheckUtils]: 55: Hoare triple {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:54,097 INFO L290 TraceCheckUtils]: 54: Hoare triple {12189#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {12164#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:31:54,097 INFO L290 TraceCheckUtils]: 53: Hoare triple {12189#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {12189#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:31:54,098 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #72#return; {12189#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:31:54,098 INFO L290 TraceCheckUtils]: 51: Hoare triple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:54,099 INFO L290 TraceCheckUtils]: 50: Hoare triple {12206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:54,099 INFO L290 TraceCheckUtils]: 49: Hoare triple {11947#true} ~cond := #in~cond; {12206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:31:54,099 INFO L272 TraceCheckUtils]: 48: Hoare triple {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~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)); {11947#true} is VALID [2022-04-08 05:31:54,099 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11947#true} {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #70#return; {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:31:54,100 INFO L290 TraceCheckUtils]: 46: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L290 TraceCheckUtils]: 45: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L290 TraceCheckUtils]: 44: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L272 TraceCheckUtils]: 43: Hoare triple {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~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)); {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11947#true} {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #68#return; {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:31:54,100 INFO L290 TraceCheckUtils]: 41: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L290 TraceCheckUtils]: 40: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L290 TraceCheckUtils]: 39: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:54,100 INFO L272 TraceCheckUtils]: 38: Hoare triple {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:54,101 INFO L290 TraceCheckUtils]: 37: Hoare triple {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:31:54,101 INFO L290 TraceCheckUtils]: 36: Hoare triple {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:31:55,455 INFO L290 TraceCheckUtils]: 35: Hoare triple {12249#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {12196#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:31:55,456 INFO L290 TraceCheckUtils]: 34: Hoare triple {12249#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} assume !!(~a~0 != ~b~0); {12249#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-08 05:31:55,457 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} {11947#true} #72#return; {12249#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-08 05:31:55,458 INFO L290 TraceCheckUtils]: 32: Hoare triple {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:55,458 INFO L290 TraceCheckUtils]: 31: Hoare triple {12206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12047#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:55,458 INFO L290 TraceCheckUtils]: 30: Hoare triple {11947#true} ~cond := #in~cond; {12206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:31:55,458 INFO L272 TraceCheckUtils]: 29: Hoare triple {11947#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:55,458 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11947#true} {11947#true} #70#return; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 27: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 26: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 25: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L272 TraceCheckUtils]: 24: Hoare triple {11947#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11947#true} {11947#true} #68#return; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 22: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 21: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 20: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L272 TraceCheckUtils]: 19: Hoare triple {11947#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 18: Hoare triple {11947#true} assume !!(#t~post6 < 10);havoc #t~post6; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 17: Hoare triple {11947#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {11947#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11947#true} {11947#true} #66#return; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 14: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L272 TraceCheckUtils]: 11: Hoare triple {11947#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:55,459 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11947#true} {11947#true} #64#return; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L290 TraceCheckUtils]: 9: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L290 TraceCheckUtils]: 8: Hoare triple {11947#true} assume !(0 == ~cond); {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L290 TraceCheckUtils]: 7: Hoare triple {11947#true} ~cond := #in~cond; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L272 TraceCheckUtils]: 6: Hoare triple {11947#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L290 TraceCheckUtils]: 5: Hoare triple {11947#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {11947#true} call #t~ret7 := main(); {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11947#true} {11947#true} #82#return; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {11947#true} assume true; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L290 TraceCheckUtils]: 1: Hoare triple {11947#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L272 TraceCheckUtils]: 0: Hoare triple {11947#true} call ULTIMATE.init(); {11947#true} is VALID [2022-04-08 05:31:55,460 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 43 proven. 16 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2022-04-08 05:31:55,460 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:31:55,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [893825970] [2022-04-08 05:31:55,461 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:31:55,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1953855575] [2022-04-08 05:31:55,461 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1953855575] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:31:55,461 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:31:55,461 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 15 [2022-04-08 05:31:55,461 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:31:55,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [779234282] [2022-04-08 05:31:55,461 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [779234282] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:31:55,461 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:31:55,461 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 05:31:55,461 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1639969745] [2022-04-08 05:31:55,461 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:31:55,462 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-08 05:31:55,462 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:31:55,462 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), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:55,504 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 05:31:55,504 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 05:31:55,504 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:31:55,505 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 05:31:55,505 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=161, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:31:55,505 INFO L87 Difference]: Start difference. First operand 181 states and 220 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:56,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:31:56,751 INFO L93 Difference]: Finished difference Result 208 states and 259 transitions. [2022-04-08 05:31:56,751 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:31:56,751 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-08 05:31:56,751 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:31:56,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:56,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-08 05:31:56,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:56,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-08 05:31:56,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2022-04-08 05:31:56,851 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:31:56,854 INFO L225 Difference]: With dead ends: 208 [2022-04-08 05:31:56,854 INFO L226 Difference]: Without dead ends: 206 [2022-04-08 05:31:56,855 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 116 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=62, Invalid=210, Unknown=0, NotChecked=0, Total=272 [2022-04-08 05:31:56,855 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 19 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 353 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 195 SdHoareTripleChecker+Invalid, 368 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 353 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-08 05:31:56,855 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 195 Invalid, 368 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 353 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-08 05:31:56,855 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2022-04-08 05:31:56,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 190. [2022-04-08 05:31:56,991 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:31:56,992 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 05:31:56,992 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 05:31:56,992 INFO L87 Difference]: Start difference. First operand 206 states. Second operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 05:31:56,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:31:56,996 INFO L93 Difference]: Finished difference Result 206 states and 257 transitions. [2022-04-08 05:31:56,996 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 257 transitions. [2022-04-08 05:31:56,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:31:56,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:31:56,997 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) Second operand 206 states. [2022-04-08 05:31:56,997 INFO L87 Difference]: Start difference. First operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) Second operand 206 states. [2022-04-08 05:31:57,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:31:57,001 INFO L93 Difference]: Finished difference Result 206 states and 257 transitions. [2022-04-08 05:31:57,001 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 257 transitions. [2022-04-08 05:31:57,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:31:57,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:31:57,002 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:31:57,002 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:31:57,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 05:31:57,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 232 transitions. [2022-04-08 05:31:57,006 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 232 transitions. Word has length 66 [2022-04-08 05:31:57,006 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:31:57,006 INFO L478 AbstractCegarLoop]: Abstraction has 190 states and 232 transitions. [2022-04-08 05:31:57,006 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 05:31:57,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 232 transitions. [2022-04-08 05:31:57,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:31:57,311 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 232 transitions. [2022-04-08 05:31:57,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-08 05:31:57,311 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:31:57,311 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:31:57,343 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 05:31:57,527 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,SelfDestructingSolverStorable14 [2022-04-08 05:31:57,527 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:31:57,528 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:31:57,528 INFO L85 PathProgramCache]: Analyzing trace with hash 1181721515, now seen corresponding path program 5 times [2022-04-08 05:31:57,528 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:31:57,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1555792276] [2022-04-08 05:31:57,528 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:31:57,528 INFO L85 PathProgramCache]: Analyzing trace with hash 1181721515, now seen corresponding path program 6 times [2022-04-08 05:31:57,528 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:31:57,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [666140792] [2022-04-08 05:31:57,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:31:57,528 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:31:57,537 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:31:57,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [169141207] [2022-04-08 05:31:57,537 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:31:57,537 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:31:57,537 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:31:57,538 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 05:31:57,539 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 05:31:57,590 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:31:57,591 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:31:57,592 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-08 05:31:57,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:31:57,620 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:31:57,958 INFO L272 TraceCheckUtils]: 0: Hoare triple {13569#true} call ULTIMATE.init(); {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 1: Hoare triple {13569#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13569#true} {13569#true} #82#return; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L272 TraceCheckUtils]: 4: Hoare triple {13569#true} call #t~ret7 := main(); {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 5: Hoare triple {13569#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L272 TraceCheckUtils]: 6: Hoare triple {13569#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13569#true} {13569#true} #64#return; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L272 TraceCheckUtils]: 11: Hoare triple {13569#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 12: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,958 INFO L290 TraceCheckUtils]: 13: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,959 INFO L290 TraceCheckUtils]: 14: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,959 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13569#true} {13569#true} #66#return; {13569#true} is VALID [2022-04-08 05:31:57,959 INFO L290 TraceCheckUtils]: 16: Hoare triple {13569#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,959 INFO L290 TraceCheckUtils]: 17: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,960 INFO L290 TraceCheckUtils]: 18: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,960 INFO L272 TraceCheckUtils]: 19: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,960 INFO L290 TraceCheckUtils]: 20: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,960 INFO L290 TraceCheckUtils]: 21: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,960 INFO L290 TraceCheckUtils]: 22: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,961 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13569#true} {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,961 INFO L272 TraceCheckUtils]: 24: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,961 INFO L290 TraceCheckUtils]: 25: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,961 INFO L290 TraceCheckUtils]: 26: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,961 INFO L290 TraceCheckUtils]: 27: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,961 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {13569#true} {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,961 INFO L272 TraceCheckUtils]: 29: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,961 INFO L290 TraceCheckUtils]: 30: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,962 INFO L290 TraceCheckUtils]: 31: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,962 INFO L290 TraceCheckUtils]: 32: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,962 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {13569#true} {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #72#return; {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,962 INFO L290 TraceCheckUtils]: 34: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,963 INFO L290 TraceCheckUtils]: 35: Hoare triple {13622#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,963 INFO L290 TraceCheckUtils]: 36: Hoare triple {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,964 INFO L290 TraceCheckUtils]: 37: Hoare triple {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,964 INFO L272 TraceCheckUtils]: 38: Hoare triple {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,964 INFO L290 TraceCheckUtils]: 39: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,964 INFO L290 TraceCheckUtils]: 40: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,964 INFO L290 TraceCheckUtils]: 41: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,964 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13569#true} {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,964 INFO L272 TraceCheckUtils]: 43: Hoare triple {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,965 INFO L290 TraceCheckUtils]: 44: Hoare triple {13569#true} ~cond := #in~cond; {13708#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:57,965 INFO L290 TraceCheckUtils]: 45: Hoare triple {13708#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:57,965 INFO L290 TraceCheckUtils]: 46: Hoare triple {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:31:57,966 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} {13680#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,966 INFO L272 TraceCheckUtils]: 48: Hoare triple {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,966 INFO L290 TraceCheckUtils]: 49: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,966 INFO L290 TraceCheckUtils]: 50: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,966 INFO L290 TraceCheckUtils]: 51: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,967 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13569#true} {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #72#return; {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,967 INFO L290 TraceCheckUtils]: 53: Hoare triple {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:31:57,970 INFO L290 TraceCheckUtils]: 54: Hoare triple {13719#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-08 05:31:57,971 INFO L290 TraceCheckUtils]: 55: Hoare triple {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-08 05:31:57,971 INFO L290 TraceCheckUtils]: 56: Hoare triple {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} assume !!(#t~post6 < 10);havoc #t~post6; {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-08 05:31:57,971 INFO L272 TraceCheckUtils]: 57: Hoare triple {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L290 TraceCheckUtils]: 58: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L290 TraceCheckUtils]: 59: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L290 TraceCheckUtils]: 60: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {13569#true} {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} #68#return; {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-08 05:31:57,972 INFO L272 TraceCheckUtils]: 62: Hoare triple {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L290 TraceCheckUtils]: 63: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L290 TraceCheckUtils]: 64: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:31:57,972 INFO L290 TraceCheckUtils]: 65: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:31:57,973 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {13569#true} {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} #70#return; {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-08 05:31:57,974 INFO L272 TraceCheckUtils]: 67: Hoare triple {13741#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13781#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:31:57,974 INFO L290 TraceCheckUtils]: 68: Hoare triple {13781#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13785#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:31:57,974 INFO L290 TraceCheckUtils]: 69: Hoare triple {13785#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13570#false} is VALID [2022-04-08 05:31:57,974 INFO L290 TraceCheckUtils]: 70: Hoare triple {13570#false} assume !false; {13570#false} is VALID [2022-04-08 05:31:57,975 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 27 proven. 27 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-08 05:31:57,975 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:32:12,513 INFO L290 TraceCheckUtils]: 70: Hoare triple {13570#false} assume !false; {13570#false} is VALID [2022-04-08 05:32:12,514 INFO L290 TraceCheckUtils]: 69: Hoare triple {13785#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13570#false} is VALID [2022-04-08 05:32:12,514 INFO L290 TraceCheckUtils]: 68: Hoare triple {13781#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13785#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:12,515 INFO L272 TraceCheckUtils]: 67: Hoare triple {13801#(= 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)); {13781#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:12,515 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {13569#true} {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,515 INFO L290 TraceCheckUtils]: 65: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,515 INFO L290 TraceCheckUtils]: 64: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,516 INFO L290 TraceCheckUtils]: 63: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,516 INFO L272 TraceCheckUtils]: 62: Hoare triple {13801#(= 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)); {13569#true} is VALID [2022-04-08 05:32:12,516 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {13569#true} {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,516 INFO L290 TraceCheckUtils]: 60: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,516 INFO L290 TraceCheckUtils]: 59: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,516 INFO L290 TraceCheckUtils]: 58: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,517 INFO L272 TraceCheckUtils]: 57: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,517 INFO L290 TraceCheckUtils]: 56: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,517 INFO L290 TraceCheckUtils]: 55: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,666 INFO L290 TraceCheckUtils]: 54: Hoare triple {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,667 INFO L290 TraceCheckUtils]: 53: Hoare triple {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !!(~a~0 != ~b~0); {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-08 05:32:12,667 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13569#true} {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} #72#return; {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-08 05:32:12,667 INFO L290 TraceCheckUtils]: 51: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,667 INFO L290 TraceCheckUtils]: 50: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,668 INFO L290 TraceCheckUtils]: 49: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,668 INFO L272 TraceCheckUtils]: 48: Hoare triple {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,668 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #70#return; {13841#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-08 05:32:12,669 INFO L290 TraceCheckUtils]: 46: Hoare triple {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:12,669 INFO L290 TraceCheckUtils]: 45: Hoare triple {13873#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:12,669 INFO L290 TraceCheckUtils]: 44: Hoare triple {13569#true} ~cond := #in~cond; {13873#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:32:12,669 INFO L272 TraceCheckUtils]: 43: Hoare triple {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,670 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13569#true} {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #68#return; {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:12,670 INFO L290 TraceCheckUtils]: 41: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,670 INFO L290 TraceCheckUtils]: 40: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,670 INFO L290 TraceCheckUtils]: 39: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,670 INFO L272 TraceCheckUtils]: 38: Hoare triple {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,671 INFO L290 TraceCheckUtils]: 37: Hoare triple {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:12,671 INFO L290 TraceCheckUtils]: 36: Hoare triple {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:12,672 INFO L290 TraceCheckUtils]: 35: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {13863#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:12,673 INFO L290 TraceCheckUtils]: 34: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~a~0 != ~b~0); {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,673 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {13569#true} {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #72#return; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,673 INFO L290 TraceCheckUtils]: 32: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,673 INFO L290 TraceCheckUtils]: 31: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,673 INFO L290 TraceCheckUtils]: 30: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,673 INFO L272 TraceCheckUtils]: 29: Hoare triple {13801#(= 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)); {13569#true} is VALID [2022-04-08 05:32:12,674 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {13569#true} {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,674 INFO L290 TraceCheckUtils]: 27: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,674 INFO L290 TraceCheckUtils]: 26: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,674 INFO L290 TraceCheckUtils]: 25: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,674 INFO L272 TraceCheckUtils]: 24: Hoare triple {13801#(= 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)); {13569#true} is VALID [2022-04-08 05:32:12,675 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13569#true} {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,675 INFO L290 TraceCheckUtils]: 22: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,675 INFO L290 TraceCheckUtils]: 21: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,675 INFO L290 TraceCheckUtils]: 20: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,675 INFO L272 TraceCheckUtils]: 19: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,675 INFO L290 TraceCheckUtils]: 18: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,675 INFO L290 TraceCheckUtils]: 17: Hoare triple {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 16: Hoare triple {13569#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13801#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:12,676 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13569#true} {13569#true} #66#return; {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 14: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 13: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 12: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L272 TraceCheckUtils]: 11: Hoare triple {13569#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13569#true} {13569#true} #64#return; {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 9: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 8: Hoare triple {13569#true} assume !(0 == ~cond); {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 7: Hoare triple {13569#true} ~cond := #in~cond; {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L272 TraceCheckUtils]: 6: Hoare triple {13569#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13569#true} is VALID [2022-04-08 05:32:12,676 INFO L290 TraceCheckUtils]: 5: Hoare triple {13569#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {13569#true} is VALID [2022-04-08 05:32:12,677 INFO L272 TraceCheckUtils]: 4: Hoare triple {13569#true} call #t~ret7 := main(); {13569#true} is VALID [2022-04-08 05:32:12,677 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13569#true} {13569#true} #82#return; {13569#true} is VALID [2022-04-08 05:32:12,677 INFO L290 TraceCheckUtils]: 2: Hoare triple {13569#true} assume true; {13569#true} is VALID [2022-04-08 05:32:12,677 INFO L290 TraceCheckUtils]: 1: Hoare triple {13569#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13569#true} is VALID [2022-04-08 05:32:12,677 INFO L272 TraceCheckUtils]: 0: Hoare triple {13569#true} call ULTIMATE.init(); {13569#true} is VALID [2022-04-08 05:32:12,677 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 31 proven. 18 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-08 05:32:12,677 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:32:12,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [666140792] [2022-04-08 05:32:12,677 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:32:12,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [169141207] [2022-04-08 05:32:12,677 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [169141207] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:32:12,677 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:32:12,678 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-08 05:32:12,678 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:32:12,678 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1555792276] [2022-04-08 05:32:12,678 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1555792276] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:32:12,678 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:32:12,678 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 05:32:12,678 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [572786354] [2022-04-08 05:32:12,678 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:32:12,678 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 71 [2022-04-08 05:32:12,678 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:32:12,679 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), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:32:12,732 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:12,732 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 05:32:12,733 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:12,733 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 05:32:12,733 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:32:12,733 INFO L87 Difference]: Start difference. First operand 190 states and 232 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:32:13,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:13,609 INFO L93 Difference]: Finished difference Result 214 states and 271 transitions. [2022-04-08 05:32:13,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 05:32:13,610 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 71 [2022-04-08 05:32:13,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:32:13,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:32:13,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 86 transitions. [2022-04-08 05:32:13,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:32:13,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 86 transitions. [2022-04-08 05:32:13,612 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 86 transitions. [2022-04-08 05:32:13,704 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:13,707 INFO L225 Difference]: With dead ends: 214 [2022-04-08 05:32:13,707 INFO L226 Difference]: Without dead ends: 208 [2022-04-08 05:32:13,708 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:32:13,708 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 15 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 292 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 300 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 292 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 05:32:13,708 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 174 Invalid, 300 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 292 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 05:32:13,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 208 states. [2022-04-08 05:32:13,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 208 to 192. [2022-04-08 05:32:13,862 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:32:13,862 INFO L82 GeneralOperation]: Start isEquivalent. First operand 208 states. Second operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 05:32:13,862 INFO L74 IsIncluded]: Start isIncluded. First operand 208 states. Second operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 05:32:13,863 INFO L87 Difference]: Start difference. First operand 208 states. Second operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 05:32:13,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:13,867 INFO L93 Difference]: Finished difference Result 208 states and 259 transitions. [2022-04-08 05:32:13,867 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 259 transitions. [2022-04-08 05:32:13,867 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:13,867 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:13,867 INFO L74 IsIncluded]: Start isIncluded. First operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) Second operand 208 states. [2022-04-08 05:32:13,868 INFO L87 Difference]: Start difference. First operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) Second operand 208 states. [2022-04-08 05:32:13,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:13,871 INFO L93 Difference]: Finished difference Result 208 states and 259 transitions. [2022-04-08 05:32:13,871 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 259 transitions. [2022-04-08 05:32:13,872 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:13,872 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:13,872 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:32:13,872 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:32:13,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 05:32:13,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 192 states to 192 states and 236 transitions. [2022-04-08 05:32:13,875 INFO L78 Accepts]: Start accepts. Automaton has 192 states and 236 transitions. Word has length 71 [2022-04-08 05:32:13,876 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:32:13,876 INFO L478 AbstractCegarLoop]: Abstraction has 192 states and 236 transitions. [2022-04-08 05:32:13,876 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:32:13,876 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 192 states and 236 transitions. [2022-04-08 05:32:14,258 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 236 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:14,258 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 236 transitions. [2022-04-08 05:32:14,259 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-08 05:32:14,259 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:32:14,259 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 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] [2022-04-08 05:32:14,277 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 05:32:14,459 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:14,460 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:32:14,460 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:32:14,460 INFO L85 PathProgramCache]: Analyzing trace with hash 787354729, now seen corresponding path program 3 times [2022-04-08 05:32:14,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:14,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [624821506] [2022-04-08 05:32:14,461 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:32:14,461 INFO L85 PathProgramCache]: Analyzing trace with hash 787354729, now seen corresponding path program 4 times [2022-04-08 05:32:14,461 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:32:14,461 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1454835616] [2022-04-08 05:32:14,461 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:32:14,461 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:32:14,475 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:32:14,475 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1098618197] [2022-04-08 05:32:14,475 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:32:14,475 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:14,476 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:32:14,476 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 05:32:14,477 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 05:32:14,518 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:32:14,519 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:32:14,520 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 05:32:14,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:32:14,532 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:32:14,997 INFO L272 TraceCheckUtils]: 0: Hoare triple {15240#true} call ULTIMATE.init(); {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 1: Hoare triple {15240#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 2: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15240#true} {15240#true} #82#return; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L272 TraceCheckUtils]: 4: Hoare triple {15240#true} call #t~ret7 := main(); {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 5: Hoare triple {15240#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L272 TraceCheckUtils]: 6: Hoare triple {15240#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 7: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 8: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 9: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15240#true} {15240#true} #64#return; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L272 TraceCheckUtils]: 11: Hoare triple {15240#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 12: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 13: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L290 TraceCheckUtils]: 14: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:14,998 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15240#true} {15240#true} #66#return; {15240#true} is VALID [2022-04-08 05:32:14,999 INFO L290 TraceCheckUtils]: 16: Hoare triple {15240#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15293#(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 05:32:14,999 INFO L290 TraceCheckUtils]: 17: Hoare triple {15293#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15293#(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 05:32:15,000 INFO L290 TraceCheckUtils]: 18: Hoare triple {15293#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {15293#(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 05:32:15,000 INFO L272 TraceCheckUtils]: 19: Hoare triple {15293#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,000 INFO L290 TraceCheckUtils]: 20: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:15,000 INFO L290 TraceCheckUtils]: 21: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:15,000 INFO L290 TraceCheckUtils]: 22: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:15,001 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15240#true} {15293#(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))} #68#return; {15293#(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 05:32:15,001 INFO L272 TraceCheckUtils]: 24: Hoare triple {15293#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,001 INFO L290 TraceCheckUtils]: 25: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:15,001 INFO L290 TraceCheckUtils]: 26: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:15,001 INFO L290 TraceCheckUtils]: 27: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:15,001 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {15240#true} {15293#(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))} #70#return; {15293#(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 05:32:15,001 INFO L272 TraceCheckUtils]: 29: Hoare triple {15293#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,007 INFO L290 TraceCheckUtils]: 30: Hoare triple {15240#true} ~cond := #in~cond; {15336#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:15,008 INFO L290 TraceCheckUtils]: 31: Hoare triple {15336#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:15,008 INFO L290 TraceCheckUtils]: 32: Hoare triple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:15,009 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} {15293#(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))} #72#return; {15293#(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 05:32:15,009 INFO L290 TraceCheckUtils]: 34: Hoare triple {15293#(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 !!(~a~0 != ~b~0); {15293#(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 05:32:15,010 INFO L290 TraceCheckUtils]: 35: Hoare triple {15293#(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 !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,010 INFO L290 TraceCheckUtils]: 36: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,010 INFO L290 TraceCheckUtils]: 37: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,010 INFO L272 TraceCheckUtils]: 38: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L290 TraceCheckUtils]: 39: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L290 TraceCheckUtils]: 40: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L290 TraceCheckUtils]: 41: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15240#true} {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #68#return; {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,011 INFO L272 TraceCheckUtils]: 43: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~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)); {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L290 TraceCheckUtils]: 44: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L290 TraceCheckUtils]: 45: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:15,011 INFO L290 TraceCheckUtils]: 46: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:15,012 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15240#true} {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #70#return; {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,012 INFO L272 TraceCheckUtils]: 48: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,012 INFO L290 TraceCheckUtils]: 49: Hoare triple {15240#true} ~cond := #in~cond; {15336#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:15,013 INFO L290 TraceCheckUtils]: 50: Hoare triple {15336#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:15,013 INFO L290 TraceCheckUtils]: 51: Hoare triple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:15,014 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #72#return; {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,014 INFO L290 TraceCheckUtils]: 53: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:15,015 INFO L290 TraceCheckUtils]: 54: Hoare triple {15353#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-08 05:32:15,015 INFO L290 TraceCheckUtils]: 55: Hoare triple {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-08 05:32:15,016 INFO L290 TraceCheckUtils]: 56: Hoare triple {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-08 05:32:15,016 INFO L272 TraceCheckUtils]: 57: Hoare triple {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,016 INFO L290 TraceCheckUtils]: 58: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:15,016 INFO L290 TraceCheckUtils]: 59: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:15,016 INFO L290 TraceCheckUtils]: 60: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:15,017 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {15240#true} {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} #68#return; {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-08 05:32:15,017 INFO L272 TraceCheckUtils]: 62: Hoare triple {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:15,017 INFO L290 TraceCheckUtils]: 63: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:15,017 INFO L290 TraceCheckUtils]: 64: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:15,017 INFO L290 TraceCheckUtils]: 65: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:15,017 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {15240#true} {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} #70#return; {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-08 05:32:15,018 INFO L272 TraceCheckUtils]: 67: Hoare triple {15411#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15451#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:15,018 INFO L290 TraceCheckUtils]: 68: Hoare triple {15451#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15455#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:15,019 INFO L290 TraceCheckUtils]: 69: Hoare triple {15455#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15241#false} is VALID [2022-04-08 05:32:15,019 INFO L290 TraceCheckUtils]: 70: Hoare triple {15241#false} assume !false; {15241#false} is VALID [2022-04-08 05:32:15,019 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 32 proven. 37 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2022-04-08 05:32:15,019 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:32:41,523 INFO L290 TraceCheckUtils]: 70: Hoare triple {15241#false} assume !false; {15241#false} is VALID [2022-04-08 05:32:41,523 INFO L290 TraceCheckUtils]: 69: Hoare triple {15455#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15241#false} is VALID [2022-04-08 05:32:41,523 INFO L290 TraceCheckUtils]: 68: Hoare triple {15451#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15455#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:41,524 INFO L272 TraceCheckUtils]: 67: Hoare triple {15471#(= 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)); {15451#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:41,525 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {15240#true} {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:41,525 INFO L290 TraceCheckUtils]: 65: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:41,525 INFO L290 TraceCheckUtils]: 64: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:41,525 INFO L290 TraceCheckUtils]: 63: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:41,525 INFO L272 TraceCheckUtils]: 62: Hoare triple {15471#(= 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)); {15240#true} is VALID [2022-04-08 05:32:41,526 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {15240#true} {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:41,526 INFO L290 TraceCheckUtils]: 60: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:41,526 INFO L290 TraceCheckUtils]: 59: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:41,526 INFO L290 TraceCheckUtils]: 58: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:41,526 INFO L272 TraceCheckUtils]: 57: Hoare triple {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:41,531 INFO L290 TraceCheckUtils]: 56: Hoare triple {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:41,532 INFO L290 TraceCheckUtils]: 55: Hoare triple {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:41,945 INFO L290 TraceCheckUtils]: 54: Hoare triple {15511#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15471#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:32:41,946 INFO L290 TraceCheckUtils]: 53: Hoare triple {15511#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !!(~a~0 != ~b~0); {15511#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-08 05:32:41,947 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #72#return; {15511#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-08 05:32:41,947 INFO L290 TraceCheckUtils]: 51: Hoare triple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:41,947 INFO L290 TraceCheckUtils]: 50: Hoare triple {15528#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:41,947 INFO L290 TraceCheckUtils]: 49: Hoare triple {15240#true} ~cond := #in~cond; {15528#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:32:41,948 INFO L272 TraceCheckUtils]: 48: Hoare triple {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:41,948 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15240#true} {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #70#return; {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:41,948 INFO L290 TraceCheckUtils]: 46: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:41,948 INFO L290 TraceCheckUtils]: 45: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:41,948 INFO L290 TraceCheckUtils]: 44: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:41,948 INFO L272 TraceCheckUtils]: 43: Hoare triple {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:41,949 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15240#true} {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #68#return; {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:41,949 INFO L290 TraceCheckUtils]: 41: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:41,949 INFO L290 TraceCheckUtils]: 40: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:41,949 INFO L290 TraceCheckUtils]: 39: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:41,949 INFO L272 TraceCheckUtils]: 38: Hoare triple {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:41,949 INFO L290 TraceCheckUtils]: 37: Hoare triple {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:41,950 INFO L290 TraceCheckUtils]: 36: Hoare triple {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:42,012 INFO L290 TraceCheckUtils]: 35: Hoare triple {15571#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15518#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:32:42,013 INFO L290 TraceCheckUtils]: 34: Hoare triple {15571#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} assume !!(~a~0 != ~b~0); {15571#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-08 05:32:42,014 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} {15240#true} #72#return; {15571#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-08 05:32:42,014 INFO L290 TraceCheckUtils]: 32: Hoare triple {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:42,015 INFO L290 TraceCheckUtils]: 31: Hoare triple {15528#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15340#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:32:42,015 INFO L290 TraceCheckUtils]: 30: Hoare triple {15240#true} ~cond := #in~cond; {15528#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:32:42,015 INFO L272 TraceCheckUtils]: 29: Hoare triple {15240#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {15240#true} {15240#true} #70#return; {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L290 TraceCheckUtils]: 27: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L290 TraceCheckUtils]: 26: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L290 TraceCheckUtils]: 25: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L272 TraceCheckUtils]: 24: Hoare triple {15240#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15240#true} {15240#true} #68#return; {15240#true} is VALID [2022-04-08 05:32:42,015 INFO L290 TraceCheckUtils]: 22: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 21: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L272 TraceCheckUtils]: 19: Hoare triple {15240#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {15240#true} assume !!(#t~post6 < 10);havoc #t~post6; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 17: Hoare triple {15240#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 16: Hoare triple {15240#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15240#true} {15240#true} #66#return; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 14: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 13: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 12: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L272 TraceCheckUtils]: 11: Hoare triple {15240#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15240#true} {15240#true} #64#return; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {15240#true} assume !(0 == ~cond); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {15240#true} ~cond := #in~cond; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L272 TraceCheckUtils]: 6: Hoare triple {15240#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {15240#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L272 TraceCheckUtils]: 4: Hoare triple {15240#true} call #t~ret7 := main(); {15240#true} is VALID [2022-04-08 05:32:42,016 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15240#true} {15240#true} #82#return; {15240#true} is VALID [2022-04-08 05:32:42,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {15240#true} assume true; {15240#true} is VALID [2022-04-08 05:32:42,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {15240#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {15240#true} is VALID [2022-04-08 05:32:42,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {15240#true} call ULTIMATE.init(); {15240#true} is VALID [2022-04-08 05:32:42,017 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 42 proven. 27 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2022-04-08 05:32:42,017 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:32:42,017 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1454835616] [2022-04-08 05:32:42,017 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:32:42,017 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1098618197] [2022-04-08 05:32:42,017 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1098618197] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:32:42,017 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:32:42,017 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 14 [2022-04-08 05:32:42,018 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:32:42,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [624821506] [2022-04-08 05:32:42,018 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [624821506] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:32:42,018 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:32:42,018 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:32:42,018 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1853346011] [2022-04-08 05:32:42,018 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:32:42,018 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 71 [2022-04-08 05:32:42,018 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:32:42,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:32:42,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:42,062 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:32:42,062 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:42,062 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:32:42,062 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:32:42,062 INFO L87 Difference]: Start difference. First operand 192 states and 236 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:32:43,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:43,129 INFO L93 Difference]: Finished difference Result 219 states and 281 transitions. [2022-04-08 05:32:43,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:32:43,129 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 71 [2022-04-08 05:32:43,129 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:32:43,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:32:43,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-08 05:32:43,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:32:43,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-08 05:32:43,131 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2022-04-08 05:32:43,229 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:43,232 INFO L225 Difference]: With dead ends: 219 [2022-04-08 05:32:43,233 INFO L226 Difference]: Without dead ends: 210 [2022-04-08 05:32:43,233 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:32:43,233 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 15 mSDsluCounter, 148 mSDsCounter, 0 mSdLazyCounter, 322 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 185 SdHoareTripleChecker+Invalid, 330 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 322 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:32:43,233 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 185 Invalid, 330 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 322 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:32:43,234 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2022-04-08 05:32:43,401 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 208. [2022-04-08 05:32:43,401 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:32:43,402 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:32:43,402 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:32:43,402 INFO L87 Difference]: Start difference. First operand 210 states. Second operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:32:43,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:43,406 INFO L93 Difference]: Finished difference Result 210 states and 263 transitions. [2022-04-08 05:32:43,406 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 263 transitions. [2022-04-08 05:32:43,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:43,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:43,407 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-08 05:32:43,407 INFO L87 Difference]: Start difference. First operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-08 05:32:43,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:43,414 INFO L93 Difference]: Finished difference Result 210 states and 263 transitions. [2022-04-08 05:32:43,414 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 263 transitions. [2022-04-08 05:32:43,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:43,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:43,414 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:32:43,414 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:32:43,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:32:43,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 260 transitions. [2022-04-08 05:32:43,418 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 260 transitions. Word has length 71 [2022-04-08 05:32:43,418 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:32:43,419 INFO L478 AbstractCegarLoop]: Abstraction has 208 states and 260 transitions. [2022-04-08 05:32:43,419 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:32:43,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 260 transitions. [2022-04-08 05:32:43,795 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:43,795 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 260 transitions. [2022-04-08 05:32:43,796 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-08 05:32:43,796 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:32:43,796 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:32:43,813 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 05:32:43,996 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,SelfDestructingSolverStorable16 [2022-04-08 05:32:43,997 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:32:43,997 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:32:43,997 INFO L85 PathProgramCache]: Analyzing trace with hash -1898774094, now seen corresponding path program 5 times [2022-04-08 05:32:43,997 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:43,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [356803254] [2022-04-08 05:32:43,997 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:32:43,997 INFO L85 PathProgramCache]: Analyzing trace with hash -1898774094, now seen corresponding path program 6 times [2022-04-08 05:32:43,998 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:32:43,998 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [320939454] [2022-04-08 05:32:43,998 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:32:43,998 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:32:44,008 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:32:44,008 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [901858777] [2022-04-08 05:32:44,008 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:32:44,009 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:44,009 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:32:44,009 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 05:32:44,010 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 05:32:44,069 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 05:32:44,069 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:32:44,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 05:32:44,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:32:44,083 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:32:44,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {16957#true} call ULTIMATE.init(); {16957#true} is VALID [2022-04-08 05:32:44,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {16957#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,379 INFO L290 TraceCheckUtils]: 2: Hoare triple {16965#(<= ~counter~0 0)} assume true; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,380 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16965#(<= ~counter~0 0)} {16957#true} #82#return; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {16965#(<= ~counter~0 0)} call #t~ret7 := main(); {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {16965#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,380 INFO L272 TraceCheckUtils]: 6: Hoare triple {16965#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {16965#(<= ~counter~0 0)} ~cond := #in~cond; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {16965#(<= ~counter~0 0)} assume !(0 == ~cond); {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {16965#(<= ~counter~0 0)} assume true; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,381 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16965#(<= ~counter~0 0)} {16965#(<= ~counter~0 0)} #64#return; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,382 INFO L272 TraceCheckUtils]: 11: Hoare triple {16965#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,382 INFO L290 TraceCheckUtils]: 12: Hoare triple {16965#(<= ~counter~0 0)} ~cond := #in~cond; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,382 INFO L290 TraceCheckUtils]: 13: Hoare triple {16965#(<= ~counter~0 0)} assume !(0 == ~cond); {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,383 INFO L290 TraceCheckUtils]: 14: Hoare triple {16965#(<= ~counter~0 0)} assume true; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,383 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16965#(<= ~counter~0 0)} {16965#(<= ~counter~0 0)} #66#return; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,383 INFO L290 TraceCheckUtils]: 16: Hoare triple {16965#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16965#(<= ~counter~0 0)} is VALID [2022-04-08 05:32:44,384 INFO L290 TraceCheckUtils]: 17: Hoare triple {16965#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,384 INFO L290 TraceCheckUtils]: 18: Hoare triple {17014#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,385 INFO L272 TraceCheckUtils]: 19: Hoare triple {17014#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,385 INFO L290 TraceCheckUtils]: 20: Hoare triple {17014#(<= ~counter~0 1)} ~cond := #in~cond; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,385 INFO L290 TraceCheckUtils]: 21: Hoare triple {17014#(<= ~counter~0 1)} assume !(0 == ~cond); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,385 INFO L290 TraceCheckUtils]: 22: Hoare triple {17014#(<= ~counter~0 1)} assume true; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,386 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17014#(<= ~counter~0 1)} {17014#(<= ~counter~0 1)} #68#return; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,386 INFO L272 TraceCheckUtils]: 24: Hoare triple {17014#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,387 INFO L290 TraceCheckUtils]: 25: Hoare triple {17014#(<= ~counter~0 1)} ~cond := #in~cond; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,387 INFO L290 TraceCheckUtils]: 26: Hoare triple {17014#(<= ~counter~0 1)} assume !(0 == ~cond); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,387 INFO L290 TraceCheckUtils]: 27: Hoare triple {17014#(<= ~counter~0 1)} assume true; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,387 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {17014#(<= ~counter~0 1)} {17014#(<= ~counter~0 1)} #70#return; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,388 INFO L272 TraceCheckUtils]: 29: Hoare triple {17014#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,388 INFO L290 TraceCheckUtils]: 30: Hoare triple {17014#(<= ~counter~0 1)} ~cond := #in~cond; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,388 INFO L290 TraceCheckUtils]: 31: Hoare triple {17014#(<= ~counter~0 1)} assume !(0 == ~cond); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,389 INFO L290 TraceCheckUtils]: 32: Hoare triple {17014#(<= ~counter~0 1)} assume true; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,389 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {17014#(<= ~counter~0 1)} {17014#(<= ~counter~0 1)} #72#return; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,389 INFO L290 TraceCheckUtils]: 34: Hoare triple {17014#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,390 INFO L290 TraceCheckUtils]: 35: Hoare triple {17014#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17014#(<= ~counter~0 1)} is VALID [2022-04-08 05:32:44,390 INFO L290 TraceCheckUtils]: 36: Hoare triple {17014#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,391 INFO L290 TraceCheckUtils]: 37: Hoare triple {17072#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,391 INFO L272 TraceCheckUtils]: 38: Hoare triple {17072#(<= ~counter~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,391 INFO L290 TraceCheckUtils]: 39: Hoare triple {17072#(<= ~counter~0 2)} ~cond := #in~cond; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,392 INFO L290 TraceCheckUtils]: 40: Hoare triple {17072#(<= ~counter~0 2)} assume !(0 == ~cond); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,407 INFO L290 TraceCheckUtils]: 41: Hoare triple {17072#(<= ~counter~0 2)} assume true; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,408 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17072#(<= ~counter~0 2)} {17072#(<= ~counter~0 2)} #68#return; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,408 INFO L272 TraceCheckUtils]: 43: Hoare triple {17072#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,409 INFO L290 TraceCheckUtils]: 44: Hoare triple {17072#(<= ~counter~0 2)} ~cond := #in~cond; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,409 INFO L290 TraceCheckUtils]: 45: Hoare triple {17072#(<= ~counter~0 2)} assume !(0 == ~cond); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,409 INFO L290 TraceCheckUtils]: 46: Hoare triple {17072#(<= ~counter~0 2)} assume true; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,410 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17072#(<= ~counter~0 2)} {17072#(<= ~counter~0 2)} #70#return; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,410 INFO L272 TraceCheckUtils]: 48: Hoare triple {17072#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,411 INFO L290 TraceCheckUtils]: 49: Hoare triple {17072#(<= ~counter~0 2)} ~cond := #in~cond; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,411 INFO L290 TraceCheckUtils]: 50: Hoare triple {17072#(<= ~counter~0 2)} assume !(0 == ~cond); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,411 INFO L290 TraceCheckUtils]: 51: Hoare triple {17072#(<= ~counter~0 2)} assume true; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,412 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17072#(<= ~counter~0 2)} {17072#(<= ~counter~0 2)} #72#return; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,412 INFO L290 TraceCheckUtils]: 53: Hoare triple {17072#(<= ~counter~0 2)} assume !!(~a~0 != ~b~0); {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,412 INFO L290 TraceCheckUtils]: 54: Hoare triple {17072#(<= ~counter~0 2)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17072#(<= ~counter~0 2)} is VALID [2022-04-08 05:32:44,413 INFO L290 TraceCheckUtils]: 55: Hoare triple {17072#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,413 INFO L290 TraceCheckUtils]: 56: Hoare triple {17130#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,414 INFO L272 TraceCheckUtils]: 57: Hoare triple {17130#(<= ~counter~0 3)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,414 INFO L290 TraceCheckUtils]: 58: Hoare triple {17130#(<= ~counter~0 3)} ~cond := #in~cond; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,414 INFO L290 TraceCheckUtils]: 59: Hoare triple {17130#(<= ~counter~0 3)} assume !(0 == ~cond); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,414 INFO L290 TraceCheckUtils]: 60: Hoare triple {17130#(<= ~counter~0 3)} assume true; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,415 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17130#(<= ~counter~0 3)} {17130#(<= ~counter~0 3)} #68#return; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,415 INFO L272 TraceCheckUtils]: 62: Hoare triple {17130#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,416 INFO L290 TraceCheckUtils]: 63: Hoare triple {17130#(<= ~counter~0 3)} ~cond := #in~cond; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,416 INFO L290 TraceCheckUtils]: 64: Hoare triple {17130#(<= ~counter~0 3)} assume !(0 == ~cond); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,416 INFO L290 TraceCheckUtils]: 65: Hoare triple {17130#(<= ~counter~0 3)} assume true; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,417 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {17130#(<= ~counter~0 3)} {17130#(<= ~counter~0 3)} #70#return; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,417 INFO L272 TraceCheckUtils]: 67: Hoare triple {17130#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,417 INFO L290 TraceCheckUtils]: 68: Hoare triple {17130#(<= ~counter~0 3)} ~cond := #in~cond; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,418 INFO L290 TraceCheckUtils]: 69: Hoare triple {17130#(<= ~counter~0 3)} assume !(0 == ~cond); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,418 INFO L290 TraceCheckUtils]: 70: Hoare triple {17130#(<= ~counter~0 3)} assume true; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,418 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {17130#(<= ~counter~0 3)} {17130#(<= ~counter~0 3)} #72#return; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,419 INFO L290 TraceCheckUtils]: 72: Hoare triple {17130#(<= ~counter~0 3)} assume !!(~a~0 != ~b~0); {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,419 INFO L290 TraceCheckUtils]: 73: Hoare triple {17130#(<= ~counter~0 3)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17130#(<= ~counter~0 3)} is VALID [2022-04-08 05:32:44,419 INFO L290 TraceCheckUtils]: 74: Hoare triple {17130#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17188#(<= |main_#t~post6| 3)} is VALID [2022-04-08 05:32:44,420 INFO L290 TraceCheckUtils]: 75: Hoare triple {17188#(<= |main_#t~post6| 3)} assume !(#t~post6 < 10);havoc #t~post6; {16958#false} is VALID [2022-04-08 05:32:44,420 INFO L272 TraceCheckUtils]: 76: Hoare triple {16958#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {16958#false} is VALID [2022-04-08 05:32:44,420 INFO L290 TraceCheckUtils]: 77: Hoare triple {16958#false} ~cond := #in~cond; {16958#false} is VALID [2022-04-08 05:32:44,420 INFO L290 TraceCheckUtils]: 78: Hoare triple {16958#false} assume 0 == ~cond; {16958#false} is VALID [2022-04-08 05:32:44,420 INFO L290 TraceCheckUtils]: 79: Hoare triple {16958#false} assume !false; {16958#false} is VALID [2022-04-08 05:32:44,420 INFO L134 CoverageAnalysis]: Checked inductivity of 193 backedges. 18 proven. 135 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 05:32:44,420 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:32:44,713 INFO L290 TraceCheckUtils]: 79: Hoare triple {16958#false} assume !false; {16958#false} is VALID [2022-04-08 05:32:44,713 INFO L290 TraceCheckUtils]: 78: Hoare triple {16958#false} assume 0 == ~cond; {16958#false} is VALID [2022-04-08 05:32:44,713 INFO L290 TraceCheckUtils]: 77: Hoare triple {16958#false} ~cond := #in~cond; {16958#false} is VALID [2022-04-08 05:32:44,713 INFO L272 TraceCheckUtils]: 76: Hoare triple {16958#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {16958#false} is VALID [2022-04-08 05:32:44,721 INFO L290 TraceCheckUtils]: 75: Hoare triple {17216#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {16958#false} is VALID [2022-04-08 05:32:44,721 INFO L290 TraceCheckUtils]: 74: Hoare triple {17220#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17216#(< |main_#t~post6| 10)} is VALID [2022-04-08 05:32:44,722 INFO L290 TraceCheckUtils]: 73: Hoare triple {17220#(< ~counter~0 10)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,722 INFO L290 TraceCheckUtils]: 72: Hoare triple {17220#(< ~counter~0 10)} assume !!(~a~0 != ~b~0); {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,722 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {16957#true} {17220#(< ~counter~0 10)} #72#return; {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,722 INFO L290 TraceCheckUtils]: 70: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L290 TraceCheckUtils]: 69: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L290 TraceCheckUtils]: 68: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L272 TraceCheckUtils]: 67: Hoare triple {17220#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {16957#true} {17220#(< ~counter~0 10)} #70#return; {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,723 INFO L290 TraceCheckUtils]: 65: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L290 TraceCheckUtils]: 64: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L290 TraceCheckUtils]: 63: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,723 INFO L272 TraceCheckUtils]: 62: Hoare triple {17220#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,724 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {16957#true} {17220#(< ~counter~0 10)} #68#return; {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,724 INFO L290 TraceCheckUtils]: 60: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,724 INFO L290 TraceCheckUtils]: 59: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,724 INFO L290 TraceCheckUtils]: 58: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,724 INFO L272 TraceCheckUtils]: 57: Hoare triple {17220#(< ~counter~0 10)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,724 INFO L290 TraceCheckUtils]: 56: Hoare triple {17220#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,725 INFO L290 TraceCheckUtils]: 55: Hoare triple {17278#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17220#(< ~counter~0 10)} is VALID [2022-04-08 05:32:44,725 INFO L290 TraceCheckUtils]: 54: Hoare triple {17278#(< ~counter~0 9)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,725 INFO L290 TraceCheckUtils]: 53: Hoare triple {17278#(< ~counter~0 9)} assume !!(~a~0 != ~b~0); {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,726 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {16957#true} {17278#(< ~counter~0 9)} #72#return; {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,726 INFO L290 TraceCheckUtils]: 51: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,726 INFO L290 TraceCheckUtils]: 50: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,726 INFO L290 TraceCheckUtils]: 49: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,726 INFO L272 TraceCheckUtils]: 48: Hoare triple {17278#(< ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,727 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16957#true} {17278#(< ~counter~0 9)} #70#return; {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,727 INFO L290 TraceCheckUtils]: 46: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,727 INFO L290 TraceCheckUtils]: 45: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,727 INFO L290 TraceCheckUtils]: 44: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,727 INFO L272 TraceCheckUtils]: 43: Hoare triple {17278#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,727 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {16957#true} {17278#(< ~counter~0 9)} #68#return; {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,727 INFO L290 TraceCheckUtils]: 41: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,728 INFO L290 TraceCheckUtils]: 40: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,728 INFO L290 TraceCheckUtils]: 39: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,728 INFO L272 TraceCheckUtils]: 38: Hoare triple {17278#(< ~counter~0 9)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,728 INFO L290 TraceCheckUtils]: 37: Hoare triple {17278#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,728 INFO L290 TraceCheckUtils]: 36: Hoare triple {17336#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17278#(< ~counter~0 9)} is VALID [2022-04-08 05:32:44,729 INFO L290 TraceCheckUtils]: 35: Hoare triple {17336#(< ~counter~0 8)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,729 INFO L290 TraceCheckUtils]: 34: Hoare triple {17336#(< ~counter~0 8)} assume !!(~a~0 != ~b~0); {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,729 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {16957#true} {17336#(< ~counter~0 8)} #72#return; {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,729 INFO L290 TraceCheckUtils]: 32: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L290 TraceCheckUtils]: 31: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L290 TraceCheckUtils]: 30: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L272 TraceCheckUtils]: 29: Hoare triple {17336#(< ~counter~0 8)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16957#true} {17336#(< ~counter~0 8)} #70#return; {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,730 INFO L290 TraceCheckUtils]: 27: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L290 TraceCheckUtils]: 26: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,730 INFO L272 TraceCheckUtils]: 24: Hoare triple {17336#(< ~counter~0 8)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,731 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16957#true} {17336#(< ~counter~0 8)} #68#return; {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,731 INFO L290 TraceCheckUtils]: 22: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,731 INFO L290 TraceCheckUtils]: 21: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,731 INFO L290 TraceCheckUtils]: 20: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,731 INFO L272 TraceCheckUtils]: 19: Hoare triple {17336#(< ~counter~0 8)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,731 INFO L290 TraceCheckUtils]: 18: Hoare triple {17336#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,732 INFO L290 TraceCheckUtils]: 17: Hoare triple {17394#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17336#(< ~counter~0 8)} is VALID [2022-04-08 05:32:44,732 INFO L290 TraceCheckUtils]: 16: Hoare triple {17394#(< ~counter~0 7)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,732 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16957#true} {17394#(< ~counter~0 7)} #66#return; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L290 TraceCheckUtils]: 12: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L272 TraceCheckUtils]: 11: Hoare triple {17394#(< ~counter~0 7)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16957#true} {17394#(< ~counter~0 7)} #64#return; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,733 INFO L290 TraceCheckUtils]: 9: Hoare triple {16957#true} assume true; {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L290 TraceCheckUtils]: 8: Hoare triple {16957#true} assume !(0 == ~cond); {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L290 TraceCheckUtils]: 7: Hoare triple {16957#true} ~cond := #in~cond; {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L272 TraceCheckUtils]: 6: Hoare triple {17394#(< ~counter~0 7)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16957#true} is VALID [2022-04-08 05:32:44,733 INFO L290 TraceCheckUtils]: 5: Hoare triple {17394#(< ~counter~0 7)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,734 INFO L272 TraceCheckUtils]: 4: Hoare triple {17394#(< ~counter~0 7)} call #t~ret7 := main(); {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,734 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17394#(< ~counter~0 7)} {16957#true} #82#return; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,734 INFO L290 TraceCheckUtils]: 2: Hoare triple {17394#(< ~counter~0 7)} assume true; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,735 INFO L290 TraceCheckUtils]: 1: Hoare triple {16957#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {17394#(< ~counter~0 7)} is VALID [2022-04-08 05:32:44,735 INFO L272 TraceCheckUtils]: 0: Hoare triple {16957#true} call ULTIMATE.init(); {16957#true} is VALID [2022-04-08 05:32:44,735 INFO L134 CoverageAnalysis]: Checked inductivity of 193 backedges. 18 proven. 27 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-08 05:32:44,735 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:32:44,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [320939454] [2022-04-08 05:32:44,735 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:32:44,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [901858777] [2022-04-08 05:32:44,735 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [901858777] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:32:44,735 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:32:44,735 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 05:32:44,736 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:32:44,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [356803254] [2022-04-08 05:32:44,736 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [356803254] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:32:44,736 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:32:44,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:32:44,736 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1903439371] [2022-04-08 05:32:44,736 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:32:44,736 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) Word has length 80 [2022-04-08 05:32:44,736 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:32:44,736 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:32:44,780 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 05:32:44,780 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:32:44,780 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:44,780 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:32:44,780 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:32:44,780 INFO L87 Difference]: Start difference. First operand 208 states and 260 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:32:45,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:45,199 INFO L93 Difference]: Finished difference Result 277 states and 329 transitions. [2022-04-08 05:32:45,199 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 05:32:45,199 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) Word has length 80 [2022-04-08 05:32:45,199 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:32:45,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:32:45,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-08 05:32:45,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:32:45,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-08 05:32:45,202 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-08 05:32:45,283 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 05:32:45,288 INFO L225 Difference]: With dead ends: 277 [2022-04-08 05:32:45,288 INFO L226 Difference]: Without dead ends: 250 [2022-04-08 05:32:45,288 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 162 GetRequests, 149 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:32:45,289 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 16 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:32:45,289 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 163 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:32:45,289 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 250 states. [2022-04-08 05:32:45,450 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 250 to 229. [2022-04-08 05:32:45,450 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:32:45,451 INFO L82 GeneralOperation]: Start isEquivalent. First operand 250 states. Second operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 05:32:45,451 INFO L74 IsIncluded]: Start isIncluded. First operand 250 states. Second operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 05:32:45,451 INFO L87 Difference]: Start difference. First operand 250 states. Second operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 05:32:45,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:45,457 INFO L93 Difference]: Finished difference Result 250 states and 294 transitions. [2022-04-08 05:32:45,457 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 294 transitions. [2022-04-08 05:32:45,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:45,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:45,458 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) Second operand 250 states. [2022-04-08 05:32:45,458 INFO L87 Difference]: Start difference. First operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) Second operand 250 states. [2022-04-08 05:32:45,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:45,463 INFO L93 Difference]: Finished difference Result 250 states and 294 transitions. [2022-04-08 05:32:45,463 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 294 transitions. [2022-04-08 05:32:45,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:45,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:45,463 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:32:45,463 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:32:45,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 05:32:45,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 268 transitions. [2022-04-08 05:32:45,469 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 268 transitions. Word has length 80 [2022-04-08 05:32:45,469 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:32:45,469 INFO L478 AbstractCegarLoop]: Abstraction has 229 states and 268 transitions. [2022-04-08 05:32:45,469 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:32:45,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 268 transitions. [2022-04-08 05:32:45,841 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 268 edges. 268 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:45,841 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 268 transitions. [2022-04-08 05:32:45,842 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-08 05:32:45,842 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:32:45,842 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:32:45,861 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 05:32:46,061 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,SelfDestructingSolverStorable17 [2022-04-08 05:32:46,061 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:32:46,061 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:32:46,061 INFO L85 PathProgramCache]: Analyzing trace with hash 629296923, now seen corresponding path program 7 times [2022-04-08 05:32:46,062 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:46,062 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2005726568] [2022-04-08 05:32:46,062 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:32:46,062 INFO L85 PathProgramCache]: Analyzing trace with hash 629296923, now seen corresponding path program 8 times [2022-04-08 05:32:46,062 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:32:46,062 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1457850385] [2022-04-08 05:32:46,062 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:32:46,062 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:32:46,071 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:32:46,071 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1073760017] [2022-04-08 05:32:46,071 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:32:46,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:46,071 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:32:46,075 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 05:32:46,078 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 05:32:46,122 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:32:46,123 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:32:46,124 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 05:32:46,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:32:46,138 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:32:46,879 INFO L272 TraceCheckUtils]: 0: Hoare triple {18966#true} call ULTIMATE.init(); {18966#true} is VALID [2022-04-08 05:32:46,879 INFO L290 TraceCheckUtils]: 1: Hoare triple {18966#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18966#true} is VALID [2022-04-08 05:32:46,879 INFO L290 TraceCheckUtils]: 2: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,879 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18966#true} {18966#true} #82#return; {18966#true} is VALID [2022-04-08 05:32:46,879 INFO L272 TraceCheckUtils]: 4: Hoare triple {18966#true} call #t~ret7 := main(); {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L290 TraceCheckUtils]: 5: Hoare triple {18966#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L272 TraceCheckUtils]: 6: Hoare triple {18966#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L290 TraceCheckUtils]: 7: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L290 TraceCheckUtils]: 8: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L290 TraceCheckUtils]: 9: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18966#true} {18966#true} #64#return; {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L272 TraceCheckUtils]: 11: Hoare triple {18966#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,880 INFO L290 TraceCheckUtils]: 12: Hoare triple {18966#true} ~cond := #in~cond; {19007#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:32:46,880 INFO L290 TraceCheckUtils]: 13: Hoare triple {19007#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {19011#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:32:46,881 INFO L290 TraceCheckUtils]: 14: Hoare triple {19011#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {19011#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:32:46,881 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19011#(not (= |assume_abort_if_not_#in~cond| 0))} {18966#true} #66#return; {19018#(<= 1 main_~y~0)} is VALID [2022-04-08 05:32:46,881 INFO L290 TraceCheckUtils]: 16: Hoare triple {19018#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19022#(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 05:32:46,882 INFO L290 TraceCheckUtils]: 17: Hoare triple {19022#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19022#(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 05:32:46,882 INFO L290 TraceCheckUtils]: 18: Hoare triple {19022#(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 !!(#t~post6 < 10);havoc #t~post6; {19022#(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 05:32:46,882 INFO L272 TraceCheckUtils]: 19: Hoare triple {19022#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,882 INFO L290 TraceCheckUtils]: 20: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,882 INFO L290 TraceCheckUtils]: 21: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,882 INFO L290 TraceCheckUtils]: 22: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,883 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18966#true} {19022#(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))} #68#return; {19022#(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 05:32:46,883 INFO L272 TraceCheckUtils]: 24: Hoare triple {19022#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,883 INFO L290 TraceCheckUtils]: 25: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,883 INFO L290 TraceCheckUtils]: 26: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,883 INFO L290 TraceCheckUtils]: 27: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,884 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18966#true} {19022#(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))} #70#return; {19022#(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 05:32:46,884 INFO L272 TraceCheckUtils]: 29: Hoare triple {19022#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,884 INFO L290 TraceCheckUtils]: 30: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,884 INFO L290 TraceCheckUtils]: 31: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,884 INFO L290 TraceCheckUtils]: 32: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,884 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {18966#true} {19022#(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))} #72#return; {19022#(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 05:32:46,885 INFO L290 TraceCheckUtils]: 34: Hoare triple {19022#(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 !!(~a~0 != ~b~0); {19022#(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 05:32:46,885 INFO L290 TraceCheckUtils]: 35: Hoare triple {19022#(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 ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,886 INFO L290 TraceCheckUtils]: 36: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,886 INFO L290 TraceCheckUtils]: 37: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,886 INFO L272 TraceCheckUtils]: 38: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,886 INFO L290 TraceCheckUtils]: 39: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,886 INFO L290 TraceCheckUtils]: 40: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,886 INFO L290 TraceCheckUtils]: 41: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,887 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {18966#true} {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #68#return; {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,887 INFO L272 TraceCheckUtils]: 43: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,887 INFO L290 TraceCheckUtils]: 44: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,887 INFO L290 TraceCheckUtils]: 45: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,887 INFO L290 TraceCheckUtils]: 46: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,888 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18966#true} {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #70#return; {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,888 INFO L272 TraceCheckUtils]: 48: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,888 INFO L290 TraceCheckUtils]: 49: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,888 INFO L290 TraceCheckUtils]: 50: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,888 INFO L290 TraceCheckUtils]: 51: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,888 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {18966#true} {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #72#return; {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,889 INFO L290 TraceCheckUtils]: 53: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~a~0 != ~b~0); {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:32:46,890 INFO L290 TraceCheckUtils]: 54: Hoare triple {19080#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,890 INFO L290 TraceCheckUtils]: 55: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,890 INFO L290 TraceCheckUtils]: 56: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,891 INFO L272 TraceCheckUtils]: 57: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L290 TraceCheckUtils]: 58: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L290 TraceCheckUtils]: 59: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L290 TraceCheckUtils]: 60: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {18966#true} {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #68#return; {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,891 INFO L272 TraceCheckUtils]: 62: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L290 TraceCheckUtils]: 63: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L290 TraceCheckUtils]: 64: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,891 INFO L290 TraceCheckUtils]: 65: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,892 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {18966#true} {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #70#return; {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,892 INFO L272 TraceCheckUtils]: 67: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,892 INFO L290 TraceCheckUtils]: 68: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,892 INFO L290 TraceCheckUtils]: 69: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,892 INFO L290 TraceCheckUtils]: 70: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,893 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18966#true} {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #72#return; {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,893 INFO L290 TraceCheckUtils]: 72: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~a~0 != ~b~0); {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 05:32:46,894 INFO L290 TraceCheckUtils]: 73: Hoare triple {19138#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:46,894 INFO L290 TraceCheckUtils]: 74: Hoare triple {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:46,895 INFO L290 TraceCheckUtils]: 75: Hoare triple {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:46,895 INFO L272 TraceCheckUtils]: 76: Hoare triple {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:46,895 INFO L290 TraceCheckUtils]: 77: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:46,895 INFO L290 TraceCheckUtils]: 78: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:46,895 INFO L290 TraceCheckUtils]: 79: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:46,895 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18966#true} {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} #68#return; {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-08 05:32:46,896 INFO L272 TraceCheckUtils]: 81: Hoare triple {19196#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19221#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:46,896 INFO L290 TraceCheckUtils]: 82: Hoare triple {19221#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19225#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:46,897 INFO L290 TraceCheckUtils]: 83: Hoare triple {19225#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18967#false} is VALID [2022-04-08 05:32:46,897 INFO L290 TraceCheckUtils]: 84: Hoare triple {18967#false} assume !false; {18967#false} is VALID [2022-04-08 05:32:46,897 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 23 proven. 33 refuted. 0 times theorem prover too weak. 181 trivial. 0 not checked. [2022-04-08 05:32:46,897 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:32:47,329 INFO L290 TraceCheckUtils]: 84: Hoare triple {18967#false} assume !false; {18967#false} is VALID [2022-04-08 05:32:47,330 INFO L290 TraceCheckUtils]: 83: Hoare triple {19225#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18967#false} is VALID [2022-04-08 05:32:47,330 INFO L290 TraceCheckUtils]: 82: Hoare triple {19221#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19225#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:47,331 INFO L272 TraceCheckUtils]: 81: Hoare triple {19241#(= 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)); {19221#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:47,331 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18966#true} {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:47,331 INFO L290 TraceCheckUtils]: 79: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:47,331 INFO L290 TraceCheckUtils]: 78: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:47,331 INFO L290 TraceCheckUtils]: 77: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:47,332 INFO L272 TraceCheckUtils]: 76: Hoare triple {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:47,332 INFO L290 TraceCheckUtils]: 75: Hoare triple {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:47,332 INFO L290 TraceCheckUtils]: 74: Hoare triple {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:48,715 INFO L290 TraceCheckUtils]: 73: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19241#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:48,716 INFO L290 TraceCheckUtils]: 72: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,716 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18966#true} {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,716 INFO L290 TraceCheckUtils]: 70: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:48,716 INFO L290 TraceCheckUtils]: 69: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:48,716 INFO L290 TraceCheckUtils]: 68: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:48,716 INFO L272 TraceCheckUtils]: 67: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:48,717 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {18966#true} {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #70#return; {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,717 INFO L290 TraceCheckUtils]: 65: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:48,717 INFO L290 TraceCheckUtils]: 64: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:48,717 INFO L290 TraceCheckUtils]: 63: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:48,717 INFO L272 TraceCheckUtils]: 62: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:48,718 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {18966#true} {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #68#return; {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,718 INFO L290 TraceCheckUtils]: 60: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:48,718 INFO L290 TraceCheckUtils]: 59: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:48,718 INFO L290 TraceCheckUtils]: 58: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:48,718 INFO L272 TraceCheckUtils]: 57: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:48,718 INFO L290 TraceCheckUtils]: 56: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,719 INFO L290 TraceCheckUtils]: 55: Hoare triple {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,817 INFO L290 TraceCheckUtils]: 54: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19266#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:48,818 INFO L290 TraceCheckUtils]: 53: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} assume !!(~a~0 != ~b~0); {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:48,818 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {18966#true} {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #72#return; {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:48,819 INFO L290 TraceCheckUtils]: 51: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L290 TraceCheckUtils]: 50: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L290 TraceCheckUtils]: 49: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L272 TraceCheckUtils]: 48: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18966#true} {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #70#return; {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:48,819 INFO L290 TraceCheckUtils]: 46: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L290 TraceCheckUtils]: 45: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L290 TraceCheckUtils]: 44: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:48,819 INFO L272 TraceCheckUtils]: 43: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:48,820 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {18966#true} {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #68#return; {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:48,820 INFO L290 TraceCheckUtils]: 41: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:48,820 INFO L290 TraceCheckUtils]: 40: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:48,820 INFO L290 TraceCheckUtils]: 39: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:48,820 INFO L272 TraceCheckUtils]: 38: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:48,821 INFO L290 TraceCheckUtils]: 37: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:48,821 INFO L290 TraceCheckUtils]: 36: Hoare triple {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:49,993 INFO L290 TraceCheckUtils]: 35: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19324#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-08 05:32:49,994 INFO L290 TraceCheckUtils]: 34: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} assume !!(~a~0 != ~b~0); {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:49,994 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {18966#true} {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #72#return; {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:49,995 INFO L290 TraceCheckUtils]: 32: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:49,995 INFO L290 TraceCheckUtils]: 31: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:49,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:49,995 INFO L272 TraceCheckUtils]: 29: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:49,995 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18966#true} {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #70#return; {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:49,995 INFO L290 TraceCheckUtils]: 27: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:49,995 INFO L290 TraceCheckUtils]: 26: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:49,995 INFO L290 TraceCheckUtils]: 25: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:49,996 INFO L272 TraceCheckUtils]: 24: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:49,996 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18966#true} {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #68#return; {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:49,996 INFO L290 TraceCheckUtils]: 22: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:50,001 INFO L290 TraceCheckUtils]: 21: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:50,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:50,001 INFO L272 TraceCheckUtils]: 19: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:50,002 INFO L290 TraceCheckUtils]: 18: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:50,002 INFO L290 TraceCheckUtils]: 17: Hoare triple {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 16: Hoare triple {18966#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19382#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-08 05:32:50,003 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18966#true} {18966#true} #66#return; {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 14: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 13: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 12: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L272 TraceCheckUtils]: 11: Hoare triple {18966#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18966#true} {18966#true} #64#return; {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 9: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 8: Hoare triple {18966#true} assume !(0 == ~cond); {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 7: Hoare triple {18966#true} ~cond := #in~cond; {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L272 TraceCheckUtils]: 6: Hoare triple {18966#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18966#true} is VALID [2022-04-08 05:32:50,003 INFO L290 TraceCheckUtils]: 5: Hoare triple {18966#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {18966#true} is VALID [2022-04-08 05:32:50,004 INFO L272 TraceCheckUtils]: 4: Hoare triple {18966#true} call #t~ret7 := main(); {18966#true} is VALID [2022-04-08 05:32:50,004 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18966#true} {18966#true} #82#return; {18966#true} is VALID [2022-04-08 05:32:50,004 INFO L290 TraceCheckUtils]: 2: Hoare triple {18966#true} assume true; {18966#true} is VALID [2022-04-08 05:32:50,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {18966#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18966#true} is VALID [2022-04-08 05:32:50,004 INFO L272 TraceCheckUtils]: 0: Hoare triple {18966#true} call ULTIMATE.init(); {18966#true} is VALID [2022-04-08 05:32:50,004 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 20 proven. 33 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 05:32:50,004 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:32:50,004 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1457850385] [2022-04-08 05:32:50,004 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:32:50,004 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1073760017] [2022-04-08 05:32:50,004 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1073760017] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:32:50,004 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:32:50,005 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 15 [2022-04-08 05:32:50,005 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:32:50,005 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2005726568] [2022-04-08 05:32:50,005 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2005726568] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:32:50,005 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:32:50,005 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 05:32:50,005 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2052738117] [2022-04-08 05:32:50,005 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:32:50,005 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-08 05:32:50,005 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:32:50,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:50,058 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:50,058 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 05:32:50,058 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:50,058 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 05:32:50,059 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:32:50,059 INFO L87 Difference]: Start difference. First operand 229 states and 268 transitions. Second operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:52,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:52,051 INFO L93 Difference]: Finished difference Result 256 states and 307 transitions. [2022-04-08 05:32:52,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:32:52,051 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-08 05:32:52,051 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:32:52,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:52,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-08 05:32:52,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:52,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-08 05:32:52,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-08 05:32:52,182 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 05:32:52,186 INFO L225 Difference]: With dead ends: 256 [2022-04-08 05:32:52,186 INFO L226 Difference]: Without dead ends: 254 [2022-04-08 05:32:52,187 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 155 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=52, Invalid=220, Unknown=0, NotChecked=0, Total=272 [2022-04-08 05:32:52,187 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 25 mSDsluCounter, 212 mSDsCounter, 0 mSdLazyCounter, 427 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 265 SdHoareTripleChecker+Invalid, 455 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 427 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-08 05:32:52,187 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 265 Invalid, 455 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 427 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-08 05:32:52,188 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 254 states. [2022-04-08 05:32:52,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 254 to 238. [2022-04-08 05:32:52,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:32:52,360 INFO L82 GeneralOperation]: Start isEquivalent. First operand 254 states. Second operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:32:52,360 INFO L74 IsIncluded]: Start isIncluded. First operand 254 states. Second operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:32:52,360 INFO L87 Difference]: Start difference. First operand 254 states. Second operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:32:52,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:52,365 INFO L93 Difference]: Finished difference Result 254 states and 305 transitions. [2022-04-08 05:32:52,365 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 305 transitions. [2022-04-08 05:32:52,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:52,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:52,366 INFO L74 IsIncluded]: Start isIncluded. First operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) Second operand 254 states. [2022-04-08 05:32:52,367 INFO L87 Difference]: Start difference. First operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) Second operand 254 states. [2022-04-08 05:32:52,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:52,373 INFO L93 Difference]: Finished difference Result 254 states and 305 transitions. [2022-04-08 05:32:52,373 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 305 transitions. [2022-04-08 05:32:52,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:52,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:52,373 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:32:52,373 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:32:52,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:32:52,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 238 states to 238 states and 280 transitions. [2022-04-08 05:32:52,379 INFO L78 Accepts]: Start accepts. Automaton has 238 states and 280 transitions. Word has length 85 [2022-04-08 05:32:52,379 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:32:52,379 INFO L478 AbstractCegarLoop]: Abstraction has 238 states and 280 transitions. [2022-04-08 05:32:52,379 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:52,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 238 states and 280 transitions. [2022-04-08 05:32:52,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 280 edges. 280 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:52,802 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 280 transitions. [2022-04-08 05:32:52,802 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-08 05:32:52,802 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:32:52,802 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:32:52,819 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-08 05:32:53,003 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:53,003 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:32:53,003 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:32:53,003 INFO L85 PathProgramCache]: Analyzing trace with hash 1330896797, now seen corresponding path program 7 times [2022-04-08 05:32:53,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:53,003 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [573464597] [2022-04-08 05:32:53,004 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:32:53,004 INFO L85 PathProgramCache]: Analyzing trace with hash 1330896797, now seen corresponding path program 8 times [2022-04-08 05:32:53,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:32:53,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1520746874] [2022-04-08 05:32:53,004 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:32:53,004 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:32:53,012 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:32:53,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [195894662] [2022-04-08 05:32:53,013 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:32:53,013 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:53,013 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:32:53,013 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 05:32:53,015 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 05:32:53,113 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:32:53,113 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:32:53,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 05:32:53,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:32:53,144 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:32:53,912 INFO L272 TraceCheckUtils]: 0: Hoare triple {20990#true} call ULTIMATE.init(); {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 1: Hoare triple {20990#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 2: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20990#true} {20990#true} #82#return; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L272 TraceCheckUtils]: 4: Hoare triple {20990#true} call #t~ret7 := main(); {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 5: Hoare triple {20990#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L272 TraceCheckUtils]: 6: Hoare triple {20990#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 7: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 8: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 9: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20990#true} {20990#true} #64#return; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L272 TraceCheckUtils]: 11: Hoare triple {20990#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 12: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 13: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L290 TraceCheckUtils]: 14: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,913 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20990#true} {20990#true} #66#return; {20990#true} is VALID [2022-04-08 05:32:53,914 INFO L290 TraceCheckUtils]: 16: Hoare triple {20990#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21043#(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 05:32:53,914 INFO L290 TraceCheckUtils]: 17: Hoare triple {21043#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21043#(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 05:32:53,914 INFO L290 TraceCheckUtils]: 18: Hoare triple {21043#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {21043#(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 05:32:53,914 INFO L272 TraceCheckUtils]: 19: Hoare triple {21043#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L290 TraceCheckUtils]: 20: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L290 TraceCheckUtils]: 21: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L290 TraceCheckUtils]: 22: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20990#true} {21043#(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))} #68#return; {21043#(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 05:32:53,915 INFO L272 TraceCheckUtils]: 24: Hoare triple {21043#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L290 TraceCheckUtils]: 25: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L290 TraceCheckUtils]: 26: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,915 INFO L290 TraceCheckUtils]: 27: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,916 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {20990#true} {21043#(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))} #70#return; {21043#(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 05:32:53,916 INFO L272 TraceCheckUtils]: 29: Hoare triple {21043#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,916 INFO L290 TraceCheckUtils]: 31: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,916 INFO L290 TraceCheckUtils]: 32: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,917 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {20990#true} {21043#(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))} #72#return; {21043#(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 05:32:53,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {21043#(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 !!(~a~0 != ~b~0); {21043#(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 05:32:53,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {21043#(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 ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,918 INFO L290 TraceCheckUtils]: 36: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,918 INFO L290 TraceCheckUtils]: 37: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,918 INFO L272 TraceCheckUtils]: 38: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,918 INFO L290 TraceCheckUtils]: 39: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,919 INFO L290 TraceCheckUtils]: 40: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,919 INFO L290 TraceCheckUtils]: 41: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,919 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20990#true} {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #68#return; {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,919 INFO L272 TraceCheckUtils]: 43: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,919 INFO L290 TraceCheckUtils]: 44: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,919 INFO L290 TraceCheckUtils]: 45: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,919 INFO L290 TraceCheckUtils]: 46: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,920 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20990#true} {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #70#return; {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,920 INFO L272 TraceCheckUtils]: 48: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,920 INFO L290 TraceCheckUtils]: 49: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,920 INFO L290 TraceCheckUtils]: 50: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,920 INFO L290 TraceCheckUtils]: 51: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,921 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20990#true} {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #72#return; {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,921 INFO L290 TraceCheckUtils]: 53: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:32:53,922 INFO L290 TraceCheckUtils]: 54: Hoare triple {21101#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,922 INFO L290 TraceCheckUtils]: 55: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,923 INFO L290 TraceCheckUtils]: 56: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} assume !!(#t~post6 < 10);havoc #t~post6; {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,923 INFO L272 TraceCheckUtils]: 57: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,923 INFO L290 TraceCheckUtils]: 58: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,923 INFO L290 TraceCheckUtils]: 59: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,923 INFO L290 TraceCheckUtils]: 60: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,923 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {20990#true} {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #68#return; {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,923 INFO L272 TraceCheckUtils]: 62: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,923 INFO L290 TraceCheckUtils]: 63: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,923 INFO L290 TraceCheckUtils]: 64: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,924 INFO L290 TraceCheckUtils]: 65: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,924 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {20990#true} {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #70#return; {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,924 INFO L272 TraceCheckUtils]: 67: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,924 INFO L290 TraceCheckUtils]: 68: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,924 INFO L290 TraceCheckUtils]: 69: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,924 INFO L290 TraceCheckUtils]: 70: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,925 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20990#true} {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #72#return; {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,925 INFO L290 TraceCheckUtils]: 72: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} assume !!(~a~0 != ~b~0); {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-08 05:32:53,927 INFO L290 TraceCheckUtils]: 73: Hoare triple {21159#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-08 05:32:53,927 INFO L290 TraceCheckUtils]: 74: Hoare triple {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-08 05:32:53,928 INFO L290 TraceCheckUtils]: 75: Hoare triple {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} assume !!(#t~post6 < 10);havoc #t~post6; {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-08 05:32:53,928 INFO L272 TraceCheckUtils]: 76: Hoare triple {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:53,928 INFO L290 TraceCheckUtils]: 77: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:53,928 INFO L290 TraceCheckUtils]: 78: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:53,928 INFO L290 TraceCheckUtils]: 79: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:53,928 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {20990#true} {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} #68#return; {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-08 05:32:53,929 INFO L272 TraceCheckUtils]: 81: Hoare triple {21217#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21242#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:53,929 INFO L290 TraceCheckUtils]: 82: Hoare triple {21242#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21246#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:53,930 INFO L290 TraceCheckUtils]: 83: Hoare triple {21246#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20991#false} is VALID [2022-04-08 05:32:53,930 INFO L290 TraceCheckUtils]: 84: Hoare triple {20991#false} assume !false; {20991#false} is VALID [2022-04-08 05:32:53,930 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 20 proven. 33 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 05:32:53,930 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:32:54,398 INFO L290 TraceCheckUtils]: 84: Hoare triple {20991#false} assume !false; {20991#false} is VALID [2022-04-08 05:32:54,398 INFO L290 TraceCheckUtils]: 83: Hoare triple {21246#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20991#false} is VALID [2022-04-08 05:32:54,398 INFO L290 TraceCheckUtils]: 82: Hoare triple {21242#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21246#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:32:54,399 INFO L272 TraceCheckUtils]: 81: Hoare triple {21262#(= 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)); {21242#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:32:54,400 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {20990#true} {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:54,400 INFO L290 TraceCheckUtils]: 79: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,400 INFO L290 TraceCheckUtils]: 78: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,400 INFO L290 TraceCheckUtils]: 77: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,400 INFO L272 TraceCheckUtils]: 76: Hoare triple {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,400 INFO L290 TraceCheckUtils]: 75: Hoare triple {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:54,400 INFO L290 TraceCheckUtils]: 74: Hoare triple {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:54,684 INFO L290 TraceCheckUtils]: 73: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21262#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:32:54,685 INFO L290 TraceCheckUtils]: 72: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,685 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20990#true} {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,685 INFO L290 TraceCheckUtils]: 70: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,685 INFO L290 TraceCheckUtils]: 69: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,685 INFO L290 TraceCheckUtils]: 68: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,685 INFO L272 TraceCheckUtils]: 67: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,686 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {20990#true} {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #70#return; {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,686 INFO L290 TraceCheckUtils]: 65: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,686 INFO L290 TraceCheckUtils]: 64: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,686 INFO L290 TraceCheckUtils]: 63: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,686 INFO L272 TraceCheckUtils]: 62: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,687 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {20990#true} {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #68#return; {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,687 INFO L290 TraceCheckUtils]: 60: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,687 INFO L290 TraceCheckUtils]: 59: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,687 INFO L290 TraceCheckUtils]: 58: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,687 INFO L272 TraceCheckUtils]: 57: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,687 INFO L290 TraceCheckUtils]: 56: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,688 INFO L290 TraceCheckUtils]: 55: Hoare triple {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,748 INFO L290 TraceCheckUtils]: 54: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {21287#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:32:54,748 INFO L290 TraceCheckUtils]: 53: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} assume !!(~a~0 != ~b~0); {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-08 05:32:54,749 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20990#true} {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #72#return; {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-08 05:32:54,749 INFO L290 TraceCheckUtils]: 51: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,749 INFO L290 TraceCheckUtils]: 50: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,749 INFO L290 TraceCheckUtils]: 49: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,749 INFO L272 TraceCheckUtils]: 48: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,750 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20990#true} {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #70#return; {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-08 05:32:54,750 INFO L290 TraceCheckUtils]: 46: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,750 INFO L290 TraceCheckUtils]: 45: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,750 INFO L290 TraceCheckUtils]: 44: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,750 INFO L272 TraceCheckUtils]: 43: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,750 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20990#true} {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #68#return; {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-08 05:32:54,751 INFO L290 TraceCheckUtils]: 41: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:54,751 INFO L290 TraceCheckUtils]: 40: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:54,751 INFO L290 TraceCheckUtils]: 39: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:54,751 INFO L272 TraceCheckUtils]: 38: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:54,751 INFO L290 TraceCheckUtils]: 37: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} assume !!(#t~post6 < 10);havoc #t~post6; {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-08 05:32:54,752 INFO L290 TraceCheckUtils]: 36: Hoare triple {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-08 05:32:56,754 WARN L290 TraceCheckUtils]: 35: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21345#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is UNKNOWN [2022-04-08 05:32:56,755 INFO L290 TraceCheckUtils]: 34: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} assume !!(~a~0 != ~b~0); {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,755 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {20990#true} {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #72#return; {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L290 TraceCheckUtils]: 31: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L290 TraceCheckUtils]: 30: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L272 TraceCheckUtils]: 29: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {20990#true} {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #70#return; {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,756 INFO L290 TraceCheckUtils]: 27: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L290 TraceCheckUtils]: 26: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L290 TraceCheckUtils]: 25: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:56,756 INFO L272 TraceCheckUtils]: 24: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:56,757 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20990#true} {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #68#return; {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,757 INFO L290 TraceCheckUtils]: 22: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:56,757 INFO L290 TraceCheckUtils]: 21: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:56,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:56,757 INFO L272 TraceCheckUtils]: 19: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:56,758 INFO L290 TraceCheckUtils]: 18: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} assume !!(#t~post6 < 10);havoc #t~post6; {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,758 INFO L290 TraceCheckUtils]: 17: Hoare triple {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 16: Hoare triple {20990#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21403#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-08 05:32:56,759 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20990#true} {20990#true} #66#return; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 14: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 13: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L272 TraceCheckUtils]: 11: Hoare triple {20990#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20990#true} {20990#true} #64#return; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {20990#true} assume !(0 == ~cond); {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 7: Hoare triple {20990#true} ~cond := #in~cond; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L272 TraceCheckUtils]: 6: Hoare triple {20990#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 5: Hoare triple {20990#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L272 TraceCheckUtils]: 4: Hoare triple {20990#true} call #t~ret7 := main(); {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20990#true} {20990#true} #82#return; {20990#true} is VALID [2022-04-08 05:32:56,759 INFO L290 TraceCheckUtils]: 2: Hoare triple {20990#true} assume true; {20990#true} is VALID [2022-04-08 05:32:56,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {20990#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {20990#true} is VALID [2022-04-08 05:32:56,760 INFO L272 TraceCheckUtils]: 0: Hoare triple {20990#true} call ULTIMATE.init(); {20990#true} is VALID [2022-04-08 05:32:56,760 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 20 proven. 33 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 05:32:56,760 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:32:56,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1520746874] [2022-04-08 05:32:56,760 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:32:56,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [195894662] [2022-04-08 05:32:56,760 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [195894662] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:32:56,760 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:32:56,760 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-08 05:32:56,761 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:32:56,761 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [573464597] [2022-04-08 05:32:56,761 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [573464597] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:32:56,761 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:32:56,761 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:32:56,761 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1052157796] [2022-04-08 05:32:56,761 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:32:56,761 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-08 05:32:56,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:32:56,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:56,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:56,821 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:32:56,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:56,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:32:56,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:32:56,822 INFO L87 Difference]: Start difference. First operand 238 states and 280 transitions. Second operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:58,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:58,312 INFO L93 Difference]: Finished difference Result 286 states and 341 transitions. [2022-04-08 05:32:58,312 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 05:32:58,312 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-08 05:32:58,312 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:32:58,312 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:58,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 97 transitions. [2022-04-08 05:32:58,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:58,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 97 transitions. [2022-04-08 05:32:58,314 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 97 transitions. [2022-04-08 05:32:58,434 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 05:32:58,439 INFO L225 Difference]: With dead ends: 286 [2022-04-08 05:32:58,440 INFO L226 Difference]: Without dead ends: 284 [2022-04-08 05:32:58,440 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 170 GetRequests, 158 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=38, Invalid=118, Unknown=0, NotChecked=0, Total=156 [2022-04-08 05:32:58,440 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 9 mSDsluCounter, 187 mSDsCounter, 0 mSdLazyCounter, 289 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 244 SdHoareTripleChecker+Invalid, 298 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 289 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 05:32:58,440 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 244 Invalid, 298 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 289 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 05:32:58,441 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 284 states. [2022-04-08 05:32:58,715 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 284 to 268. [2022-04-08 05:32:58,715 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:32:58,716 INFO L82 GeneralOperation]: Start isEquivalent. First operand 284 states. Second operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-08 05:32:58,716 INFO L74 IsIncluded]: Start isIncluded. First operand 284 states. Second operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-08 05:32:58,717 INFO L87 Difference]: Start difference. First operand 284 states. Second operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-08 05:32:58,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:58,723 INFO L93 Difference]: Finished difference Result 284 states and 339 transitions. [2022-04-08 05:32:58,723 INFO L276 IsEmpty]: Start isEmpty. Operand 284 states and 339 transitions. [2022-04-08 05:32:58,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:58,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:58,724 INFO L74 IsIncluded]: Start isIncluded. First operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) Second operand 284 states. [2022-04-08 05:32:58,724 INFO L87 Difference]: Start difference. First operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) Second operand 284 states. [2022-04-08 05:32:58,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:32:58,730 INFO L93 Difference]: Finished difference Result 284 states and 339 transitions. [2022-04-08 05:32:58,730 INFO L276 IsEmpty]: Start isEmpty. Operand 284 states and 339 transitions. [2022-04-08 05:32:58,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:32:58,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:32:58,731 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:32:58,731 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:32:58,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-08 05:32:58,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 268 states to 268 states and 314 transitions. [2022-04-08 05:32:58,743 INFO L78 Accepts]: Start accepts. Automaton has 268 states and 314 transitions. Word has length 85 [2022-04-08 05:32:58,744 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:32:58,744 INFO L478 AbstractCegarLoop]: Abstraction has 268 states and 314 transitions. [2022-04-08 05:32:58,744 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:32:58,744 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 268 states and 314 transitions. [2022-04-08 05:32:59,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:32:59,271 INFO L276 IsEmpty]: Start isEmpty. Operand 268 states and 314 transitions. [2022-04-08 05:32:59,272 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-08 05:32:59,272 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:32:59,272 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:32:59,291 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 05:32:59,472 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:59,473 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:32:59,473 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:32:59,473 INFO L85 PathProgramCache]: Analyzing trace with hash 148216665, now seen corresponding path program 9 times [2022-04-08 05:32:59,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:32:59,473 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [334631761] [2022-04-08 05:32:59,473 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:32:59,473 INFO L85 PathProgramCache]: Analyzing trace with hash 148216665, now seen corresponding path program 10 times [2022-04-08 05:32:59,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:32:59,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1128444314] [2022-04-08 05:32:59,474 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:32:59,474 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:32:59,482 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:32:59,482 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1375900453] [2022-04-08 05:32:59,482 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:32:59,482 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:32:59,482 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:32:59,483 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 05:32:59,484 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 05:32:59,528 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:32:59,529 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:32:59,530 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-08 05:32:59,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:32:59,546 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:33:49,911 INFO L272 TraceCheckUtils]: 0: Hoare triple {23189#true} call ULTIMATE.init(); {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L290 TraceCheckUtils]: 1: Hoare triple {23189#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23189#true} {23189#true} #82#return; {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L272 TraceCheckUtils]: 4: Hoare triple {23189#true} call #t~ret7 := main(); {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L290 TraceCheckUtils]: 5: Hoare triple {23189#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L272 TraceCheckUtils]: 6: Hoare triple {23189#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L290 TraceCheckUtils]: 7: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L290 TraceCheckUtils]: 8: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,911 INFO L290 TraceCheckUtils]: 9: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23189#true} {23189#true} #64#return; {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L272 TraceCheckUtils]: 11: Hoare triple {23189#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L290 TraceCheckUtils]: 12: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L290 TraceCheckUtils]: 13: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L290 TraceCheckUtils]: 14: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23189#true} {23189#true} #66#return; {23189#true} is VALID [2022-04-08 05:33:49,912 INFO L290 TraceCheckUtils]: 16: Hoare triple {23189#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23242#(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 05:33:49,913 INFO L290 TraceCheckUtils]: 17: Hoare triple {23242#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23242#(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 05:33:49,913 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {23242#(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 05:33:49,913 INFO L272 TraceCheckUtils]: 19: Hoare triple {23242#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,913 INFO L290 TraceCheckUtils]: 20: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,913 INFO L290 TraceCheckUtils]: 21: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,913 INFO L290 TraceCheckUtils]: 22: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,914 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23189#true} {23242#(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))} #68#return; {23242#(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 05:33:49,914 INFO L272 TraceCheckUtils]: 24: Hoare triple {23242#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,914 INFO L290 TraceCheckUtils]: 25: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,914 INFO L290 TraceCheckUtils]: 26: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,914 INFO L290 TraceCheckUtils]: 27: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,915 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {23189#true} {23242#(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))} #70#return; {23242#(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 05:33:49,915 INFO L272 TraceCheckUtils]: 29: Hoare triple {23242#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,915 INFO L290 TraceCheckUtils]: 30: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,915 INFO L290 TraceCheckUtils]: 31: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,915 INFO L290 TraceCheckUtils]: 32: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,916 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {23189#true} {23242#(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))} #72#return; {23242#(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 05:33:49,916 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#(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 !!(~a~0 != ~b~0); {23242#(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 05:33:49,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {23242#(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 !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,917 INFO L290 TraceCheckUtils]: 36: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,918 INFO L290 TraceCheckUtils]: 37: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,918 INFO L272 TraceCheckUtils]: 38: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,918 INFO L290 TraceCheckUtils]: 39: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,918 INFO L290 TraceCheckUtils]: 40: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,918 INFO L290 TraceCheckUtils]: 41: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,919 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23189#true} {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #68#return; {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,919 INFO L272 TraceCheckUtils]: 43: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,919 INFO L290 TraceCheckUtils]: 44: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,919 INFO L290 TraceCheckUtils]: 45: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,919 INFO L290 TraceCheckUtils]: 46: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,919 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23189#true} {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #70#return; {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,919 INFO L272 TraceCheckUtils]: 48: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,919 INFO L290 TraceCheckUtils]: 49: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,920 INFO L290 TraceCheckUtils]: 50: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,920 INFO L290 TraceCheckUtils]: 51: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,920 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23189#true} {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #72#return; {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,921 INFO L290 TraceCheckUtils]: 53: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} assume !!(~a~0 != ~b~0); {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-08 05:33:49,922 INFO L290 TraceCheckUtils]: 54: Hoare triple {23300#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,923 INFO L290 TraceCheckUtils]: 55: Hoare triple {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,923 INFO L290 TraceCheckUtils]: 56: Hoare triple {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} assume !!(#t~post6 < 10);havoc #t~post6; {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,923 INFO L272 TraceCheckUtils]: 57: Hoare triple {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,923 INFO L290 TraceCheckUtils]: 58: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,923 INFO L290 TraceCheckUtils]: 59: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,923 INFO L290 TraceCheckUtils]: 60: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,924 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {23189#true} {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} #68#return; {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,924 INFO L272 TraceCheckUtils]: 62: Hoare triple {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,924 INFO L290 TraceCheckUtils]: 63: Hoare triple {23189#true} ~cond := #in~cond; {23386#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:33:49,924 INFO L290 TraceCheckUtils]: 64: Hoare triple {23386#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:33:49,925 INFO L290 TraceCheckUtils]: 65: Hoare triple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:33:49,926 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} {23358#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} #70#return; {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,926 INFO L272 TraceCheckUtils]: 67: Hoare triple {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,926 INFO L290 TraceCheckUtils]: 68: Hoare triple {23189#true} ~cond := #in~cond; {23386#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:33:49,926 INFO L290 TraceCheckUtils]: 69: Hoare triple {23386#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:33:49,926 INFO L290 TraceCheckUtils]: 70: Hoare triple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:33:49,927 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} #72#return; {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,927 INFO L290 TraceCheckUtils]: 72: Hoare triple {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} assume !!(~a~0 != ~b~0); {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} is VALID [2022-04-08 05:33:49,931 INFO L290 TraceCheckUtils]: 73: Hoare triple {23397#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 05:33:49,932 INFO L290 TraceCheckUtils]: 74: Hoare triple {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 05:33:49,933 INFO L290 TraceCheckUtils]: 75: Hoare triple {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} assume !!(#t~post6 < 10);havoc #t~post6; {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 05:33:49,933 INFO L272 TraceCheckUtils]: 76: Hoare triple {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:33:49,933 INFO L290 TraceCheckUtils]: 77: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:33:49,933 INFO L290 TraceCheckUtils]: 78: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:33:49,933 INFO L290 TraceCheckUtils]: 79: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:33:49,933 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {23189#true} {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} #68#return; {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 05:33:49,938 INFO L272 TraceCheckUtils]: 81: Hoare triple {23419#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23444#(exists ((v_main_~x~0_BEFORE_CALL_152 Int) (aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46 Int) (aux_div_v_main_~p~0_BEFORE_CALL_140_45 Int)) (and (< 0 v_main_~x~0_BEFORE_CALL_152) (< (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46) 3) (<= 1 |__VERIFIER_assert_#in~cond|) (= (+ (* 2 (* aux_div_v_main_~p~0_BEFORE_CALL_140_45 v_main_~x~0_BEFORE_CALL_152)) (* 2 v_main_~x~0_BEFORE_CALL_152) (* 3 (* v_main_~x~0_BEFORE_CALL_152 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))) 0) (<= 0 (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))))} is VALID [2022-04-08 05:33:49,939 INFO L290 TraceCheckUtils]: 82: Hoare triple {23444#(exists ((v_main_~x~0_BEFORE_CALL_152 Int) (aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46 Int) (aux_div_v_main_~p~0_BEFORE_CALL_140_45 Int)) (and (< 0 v_main_~x~0_BEFORE_CALL_152) (< (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46) 3) (<= 1 |__VERIFIER_assert_#in~cond|) (= (+ (* 2 (* aux_div_v_main_~p~0_BEFORE_CALL_140_45 v_main_~x~0_BEFORE_CALL_152)) (* 2 v_main_~x~0_BEFORE_CALL_152) (* 3 (* v_main_~x~0_BEFORE_CALL_152 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))) 0) (<= 0 (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))))} ~cond := #in~cond; {23448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:33:49,939 INFO L290 TraceCheckUtils]: 83: Hoare triple {23448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23190#false} is VALID [2022-04-08 05:33:49,939 INFO L290 TraceCheckUtils]: 84: Hoare triple {23190#false} assume !false; {23190#false} is VALID [2022-04-08 05:33:49,939 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 60 proven. 41 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-08 05:33:49,940 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:34:12,126 INFO L290 TraceCheckUtils]: 84: Hoare triple {23190#false} assume !false; {23190#false} is VALID [2022-04-08 05:34:12,126 INFO L290 TraceCheckUtils]: 83: Hoare triple {23448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23190#false} is VALID [2022-04-08 05:34:12,126 INFO L290 TraceCheckUtils]: 82: Hoare triple {23461#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:34:12,127 INFO L272 TraceCheckUtils]: 81: Hoare triple {23465#(= 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)); {23461#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:34:12,128 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {23189#true} {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:34:12,128 INFO L290 TraceCheckUtils]: 79: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:12,128 INFO L290 TraceCheckUtils]: 78: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:12,128 INFO L290 TraceCheckUtils]: 77: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:12,128 INFO L272 TraceCheckUtils]: 76: Hoare triple {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:12,128 INFO L290 TraceCheckUtils]: 75: Hoare triple {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:34:12,129 INFO L290 TraceCheckUtils]: 74: Hoare triple {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:34:13,301 INFO L290 TraceCheckUtils]: 73: Hoare triple {23490#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23465#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:34:13,302 INFO L290 TraceCheckUtils]: 72: Hoare triple {23490#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {23490#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:34:13,303 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} {23497#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #72#return; {23490#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-08 05:34:13,303 INFO L290 TraceCheckUtils]: 70: Hoare triple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:13,303 INFO L290 TraceCheckUtils]: 69: Hoare triple {23507#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:13,303 INFO L290 TraceCheckUtils]: 68: Hoare triple {23189#true} ~cond := #in~cond; {23507#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:34:13,303 INFO L272 TraceCheckUtils]: 67: Hoare triple {23497#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~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)); {23189#true} is VALID [2022-04-08 05:34:13,305 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} {23189#true} #70#return; {23497#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:34:13,305 INFO L290 TraceCheckUtils]: 65: Hoare triple {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 64: Hoare triple {23507#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23390#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 63: Hoare triple {23189#true} ~cond := #in~cond; {23507#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:34:13,306 INFO L272 TraceCheckUtils]: 62: Hoare triple {23189#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {23189#true} {23189#true} #68#return; {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 60: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 59: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 58: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L272 TraceCheckUtils]: 57: Hoare triple {23189#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 56: Hoare triple {23189#true} assume !!(#t~post6 < 10);havoc #t~post6; {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 55: Hoare triple {23189#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 54: Hoare triple {23189#true} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L290 TraceCheckUtils]: 53: Hoare triple {23189#true} assume !!(~a~0 != ~b~0); {23189#true} is VALID [2022-04-08 05:34:13,306 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23189#true} {23189#true} #72#return; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 51: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 50: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 49: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L272 TraceCheckUtils]: 48: Hoare triple {23189#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23189#true} {23189#true} #70#return; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 46: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 45: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 44: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L272 TraceCheckUtils]: 43: Hoare triple {23189#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23189#true} {23189#true} #68#return; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 41: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 40: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L272 TraceCheckUtils]: 38: Hoare triple {23189#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 37: Hoare triple {23189#true} assume !!(#t~post6 < 10);havoc #t~post6; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 36: Hoare triple {23189#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 35: Hoare triple {23189#true} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L290 TraceCheckUtils]: 34: Hoare triple {23189#true} assume !!(~a~0 != ~b~0); {23189#true} is VALID [2022-04-08 05:34:13,307 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {23189#true} {23189#true} #72#return; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 32: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 31: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 30: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L272 TraceCheckUtils]: 29: Hoare triple {23189#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {23189#true} {23189#true} #70#return; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 27: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 26: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 25: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L272 TraceCheckUtils]: 24: Hoare triple {23189#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23189#true} {23189#true} #68#return; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 21: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 20: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L272 TraceCheckUtils]: 19: Hoare triple {23189#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 18: Hoare triple {23189#true} assume !!(#t~post6 < 10);havoc #t~post6; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 17: Hoare triple {23189#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 16: Hoare triple {23189#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23189#true} {23189#true} #66#return; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 14: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,308 INFO L290 TraceCheckUtils]: 13: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 12: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L272 TraceCheckUtils]: 11: Hoare triple {23189#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23189#true} {23189#true} #64#return; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {23189#true} assume !(0 == ~cond); {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {23189#true} ~cond := #in~cond; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L272 TraceCheckUtils]: 6: Hoare triple {23189#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {23189#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L272 TraceCheckUtils]: 4: Hoare triple {23189#true} call #t~ret7 := main(); {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23189#true} {23189#true} #82#return; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {23189#true} assume true; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {23189#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L272 TraceCheckUtils]: 0: Hoare triple {23189#true} call ULTIMATE.init(); {23189#true} is VALID [2022-04-08 05:34:13,309 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 78 proven. 8 refuted. 0 times theorem prover too weak. 151 trivial. 0 not checked. [2022-04-08 05:34:13,310 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:34:13,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1128444314] [2022-04-08 05:34:13,310 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:34:13,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1375900453] [2022-04-08 05:34:13,310 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1375900453] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:34:13,310 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:34:13,310 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 16 [2022-04-08 05:34:13,310 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:34:13,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [334631761] [2022-04-08 05:34:13,310 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [334631761] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:34:13,310 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:34:13,310 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 05:34:13,310 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1614265454] [2022-04-08 05:34:13,310 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:34:13,311 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 85 [2022-04-08 05:34:13,311 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:34:13,311 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 05:34:13,380 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:34:13,380 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 05:34:13,381 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:34:13,381 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 05:34:13,381 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:34:13,381 INFO L87 Difference]: Start difference. First operand 268 states and 314 transitions. Second operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 05:34:18,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:34:18,077 INFO L93 Difference]: Finished difference Result 297 states and 355 transitions. [2022-04-08 05:34:18,077 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:34:18,078 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 85 [2022-04-08 05:34:18,079 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:34:18,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 05:34:18,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-08 05:34:18,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 05:34:18,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-08 05:34:18,096 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-08 05:34:18,225 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 05:34:18,230 INFO L225 Difference]: With dead ends: 297 [2022-04-08 05:34:18,230 INFO L226 Difference]: Without dead ends: 295 [2022-04-08 05:34:18,231 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 153 SyntacticMatches, 4 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-08 05:34:18,231 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 372 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 253 SdHoareTripleChecker+Invalid, 430 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 372 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 55 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-08 05:34:18,231 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 253 Invalid, 430 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 372 Invalid, 0 Unknown, 55 Unchecked, 1.9s Time] [2022-04-08 05:34:18,231 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 295 states. [2022-04-08 05:34:18,515 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 295 to 249. [2022-04-08 05:34:18,515 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:34:18,515 INFO L82 GeneralOperation]: Start isEquivalent. First operand 295 states. Second operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 05:34:18,515 INFO L74 IsIncluded]: Start isIncluded. First operand 295 states. Second operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 05:34:18,516 INFO L87 Difference]: Start difference. First operand 295 states. Second operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 05:34:18,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:34:18,522 INFO L93 Difference]: Finished difference Result 295 states and 353 transitions. [2022-04-08 05:34:18,522 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 353 transitions. [2022-04-08 05:34:18,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:34:18,522 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:34:18,523 INFO L74 IsIncluded]: Start isIncluded. First operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 295 states. [2022-04-08 05:34:18,523 INFO L87 Difference]: Start difference. First operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 295 states. [2022-04-08 05:34:18,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:34:18,527 INFO L93 Difference]: Finished difference Result 295 states and 353 transitions. [2022-04-08 05:34:18,527 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 353 transitions. [2022-04-08 05:34:18,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:34:18,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:34:18,528 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:34:18,528 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:34:18,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 05:34:18,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 294 transitions. [2022-04-08 05:34:18,533 INFO L78 Accepts]: Start accepts. Automaton has 249 states and 294 transitions. Word has length 85 [2022-04-08 05:34:18,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:34:18,533 INFO L478 AbstractCegarLoop]: Abstraction has 249 states and 294 transitions. [2022-04-08 05:34:18,533 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 05:34:18,533 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 249 states and 294 transitions. [2022-04-08 05:34:19,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:34:19,093 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 294 transitions. [2022-04-08 05:34:19,093 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-08 05:34:19,093 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:34:19,093 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:34:19,110 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-08 05:34:19,307 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:34:19,307 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:34:19,308 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:34:19,308 INFO L85 PathProgramCache]: Analyzing trace with hash 849816539, now seen corresponding path program 11 times [2022-04-08 05:34:19,308 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:34:19,308 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1688504885] [2022-04-08 05:34:19,308 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:34:19,308 INFO L85 PathProgramCache]: Analyzing trace with hash 849816539, now seen corresponding path program 12 times [2022-04-08 05:34:19,308 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:34:19,308 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1404149029] [2022-04-08 05:34:19,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:34:19,309 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:34:19,320 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:34:19,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [709244178] [2022-04-08 05:34:19,320 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:34:19,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:34:19,320 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:34:19,321 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 05:34:19,321 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 05:34:19,405 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:34:19,405 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:34:19,406 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 05:34:19,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:34:19,431 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:34:19,836 INFO L272 TraceCheckUtils]: 0: Hoare triple {25402#true} call ULTIMATE.init(); {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {25402#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25402#true} {25402#true} #82#return; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L272 TraceCheckUtils]: 4: Hoare triple {25402#true} call #t~ret7 := main(); {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L290 TraceCheckUtils]: 5: Hoare triple {25402#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L272 TraceCheckUtils]: 6: Hoare triple {25402#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L290 TraceCheckUtils]: 7: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L290 TraceCheckUtils]: 8: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L290 TraceCheckUtils]: 9: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25402#true} {25402#true} #64#return; {25402#true} is VALID [2022-04-08 05:34:19,836 INFO L272 TraceCheckUtils]: 11: Hoare triple {25402#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,837 INFO L290 TraceCheckUtils]: 12: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,837 INFO L290 TraceCheckUtils]: 13: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,837 INFO L290 TraceCheckUtils]: 14: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,837 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {25402#true} {25402#true} #66#return; {25402#true} is VALID [2022-04-08 05:34:19,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {25402#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,838 INFO L290 TraceCheckUtils]: 18: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,838 INFO L272 TraceCheckUtils]: 19: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,838 INFO L290 TraceCheckUtils]: 20: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,838 INFO L290 TraceCheckUtils]: 21: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,838 INFO L290 TraceCheckUtils]: 22: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,838 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,838 INFO L272 TraceCheckUtils]: 24: Hoare triple {25455#(and (= main_~r~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)); {25402#true} is VALID [2022-04-08 05:34:19,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {25402#true} ~cond := #in~cond; {25483#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:34:19,839 INFO L290 TraceCheckUtils]: 26: Hoare triple {25483#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:19,839 INFO L290 TraceCheckUtils]: 27: Hoare triple {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:19,839 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,840 INFO L272 TraceCheckUtils]: 29: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,840 INFO L290 TraceCheckUtils]: 31: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,840 INFO L290 TraceCheckUtils]: 32: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,840 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,840 INFO L290 TraceCheckUtils]: 34: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,841 INFO L290 TraceCheckUtils]: 35: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,841 INFO L290 TraceCheckUtils]: 36: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,841 INFO L290 TraceCheckUtils]: 37: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,841 INFO L272 TraceCheckUtils]: 38: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L290 TraceCheckUtils]: 39: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L290 TraceCheckUtils]: 40: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L290 TraceCheckUtils]: 41: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,842 INFO L272 TraceCheckUtils]: 43: Hoare triple {25455#(and (= main_~r~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)); {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L290 TraceCheckUtils]: 44: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L290 TraceCheckUtils]: 45: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,842 INFO L290 TraceCheckUtils]: 46: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,843 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,843 INFO L272 TraceCheckUtils]: 48: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,843 INFO L290 TraceCheckUtils]: 49: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,843 INFO L290 TraceCheckUtils]: 50: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,843 INFO L290 TraceCheckUtils]: 51: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,843 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,843 INFO L290 TraceCheckUtils]: 53: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,844 INFO L290 TraceCheckUtils]: 54: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,844 INFO L290 TraceCheckUtils]: 55: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,844 INFO L290 TraceCheckUtils]: 56: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,845 INFO L272 TraceCheckUtils]: 57: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L290 TraceCheckUtils]: 58: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L290 TraceCheckUtils]: 59: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L290 TraceCheckUtils]: 60: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,845 INFO L272 TraceCheckUtils]: 62: Hoare triple {25455#(and (= main_~r~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)); {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L290 TraceCheckUtils]: 63: Hoare triple {25402#true} ~cond := #in~cond; {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L290 TraceCheckUtils]: 64: Hoare triple {25402#true} assume !(0 == ~cond); {25402#true} is VALID [2022-04-08 05:34:19,845 INFO L290 TraceCheckUtils]: 65: Hoare triple {25402#true} assume true; {25402#true} is VALID [2022-04-08 05:34:19,846 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {25402#true} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,846 INFO L272 TraceCheckUtils]: 67: Hoare triple {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,846 INFO L290 TraceCheckUtils]: 68: Hoare triple {25402#true} ~cond := #in~cond; {25483#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:34:19,846 INFO L290 TraceCheckUtils]: 69: Hoare triple {25483#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:19,846 INFO L290 TraceCheckUtils]: 70: Hoare triple {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:19,847 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} {25455#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {25623#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,847 INFO L290 TraceCheckUtils]: 72: Hoare triple {25623#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {25623#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:34:19,848 INFO L290 TraceCheckUtils]: 73: Hoare triple {25623#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} is VALID [2022-04-08 05:34:19,849 INFO L290 TraceCheckUtils]: 74: Hoare triple {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} is VALID [2022-04-08 05:34:19,849 INFO L290 TraceCheckUtils]: 75: Hoare triple {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} is VALID [2022-04-08 05:34:19,849 INFO L272 TraceCheckUtils]: 76: Hoare triple {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25402#true} is VALID [2022-04-08 05:34:19,849 INFO L290 TraceCheckUtils]: 77: Hoare triple {25402#true} ~cond := #in~cond; {25483#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:34:19,849 INFO L290 TraceCheckUtils]: 78: Hoare triple {25483#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:19,850 INFO L290 TraceCheckUtils]: 79: Hoare triple {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:34:19,857 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {25487#(not (= |__VERIFIER_assert_#in~cond| 0))} {25630#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} #68#return; {25652#(and (= (* main_~p~0 (* (- 1) main_~r~0)) (+ (* (+ (* (- 1) main_~p~0) 1) main_~r~0) 1)) (= main_~a~0 (+ (* (* (+ (* (- 1) main_~p~0) 1) main_~x~0) (- 1)) (* (- 1) (* main_~y~0 (* (- 1) main_~r~0))) main_~x~0)))} is VALID [2022-04-08 05:34:19,858 INFO L272 TraceCheckUtils]: 81: Hoare triple {25652#(and (= (* main_~p~0 (* (- 1) main_~r~0)) (+ (* (+ (* (- 1) main_~p~0) 1) main_~r~0) 1)) (= main_~a~0 (+ (* (* (+ (* (- 1) main_~p~0) 1) main_~x~0) (- 1)) (* (- 1) (* main_~y~0 (* (- 1) main_~r~0))) main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25656#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:34:19,859 INFO L290 TraceCheckUtils]: 82: Hoare triple {25656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:34:19,859 INFO L290 TraceCheckUtils]: 83: Hoare triple {25660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25403#false} is VALID [2022-04-08 05:34:19,859 INFO L290 TraceCheckUtils]: 84: Hoare triple {25403#false} assume !false; {25403#false} is VALID [2022-04-08 05:34:19,859 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 66 proven. 33 refuted. 0 times theorem prover too weak. 138 trivial. 0 not checked. [2022-04-08 05:34:19,859 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:35:56,172 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:36:04,979 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:36:43,473 WARN L232 SmtUtils]: Spent 13.59s on a formula simplification. DAG size of input: 63 DAG size of output: 62 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-08 05:36:43,480 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:36:43,480 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1404149029] [2022-04-08 05:36:43,480 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:36:43,480 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [709244178] [2022-04-08 05:36:43,480 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [709244178] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:36:43,480 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:36:43,480 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-08 05:36:43,480 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:36:43,480 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1688504885] [2022-04-08 05:36:43,480 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1688504885] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:36:43,480 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:36:43,480 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 05:36:43,480 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [910097570] [2022-04-08 05:36:43,480 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:36:43,481 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) Word has length 85 [2022-04-08 05:36:43,481 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:36:43,481 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:36:43,523 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:36:43,523 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 05:36:43,523 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:36:43,524 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 05:36:43,524 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=158, Unknown=5, NotChecked=0, Total=210 [2022-04-08 05:36:43,524 INFO L87 Difference]: Start difference. First operand 249 states and 294 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:36:48,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:36:48,879 INFO L93 Difference]: Finished difference Result 315 states and 392 transitions. [2022-04-08 05:36:48,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 05:36:48,879 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) Word has length 85 [2022-04-08 05:36:48,879 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:36:48,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:36:48,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-08 05:36:48,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:36:48,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-08 05:36:48,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 110 transitions. [2022-04-08 05:36:49,040 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:36:49,046 INFO L225 Difference]: With dead ends: 315 [2022-04-08 05:36:49,046 INFO L226 Difference]: Without dead ends: 309 [2022-04-08 05:36:49,046 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 28.1s TimeCoverageRelationStatistics Valid=67, Invalid=233, Unknown=6, NotChecked=0, Total=306 [2022-04-08 05:36:49,046 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 26 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 398 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 202 SdHoareTripleChecker+Invalid, 425 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 398 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-08 05:36:49,047 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 202 Invalid, 425 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 398 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-08 05:36:49,047 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 309 states. [2022-04-08 05:36:49,273 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 309 to 265. [2022-04-08 05:36:49,273 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:36:49,274 INFO L82 GeneralOperation]: Start isEquivalent. First operand 309 states. Second operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 05:36:49,274 INFO L74 IsIncluded]: Start isIncluded. First operand 309 states. Second operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 05:36:49,274 INFO L87 Difference]: Start difference. First operand 309 states. Second operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 05:36:49,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:36:49,285 INFO L93 Difference]: Finished difference Result 309 states and 381 transitions. [2022-04-08 05:36:49,285 INFO L276 IsEmpty]: Start isEmpty. Operand 309 states and 381 transitions. [2022-04-08 05:36:49,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:36:49,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:36:49,286 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) Second operand 309 states. [2022-04-08 05:36:49,286 INFO L87 Difference]: Start difference. First operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) Second operand 309 states. [2022-04-08 05:36:49,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:36:49,291 INFO L93 Difference]: Finished difference Result 309 states and 381 transitions. [2022-04-08 05:36:49,291 INFO L276 IsEmpty]: Start isEmpty. Operand 309 states and 381 transitions. [2022-04-08 05:36:49,292 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:36:49,292 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:36:49,292 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:36:49,292 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:36:49,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 05:36:49,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 313 transitions. [2022-04-08 05:36:49,297 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 313 transitions. Word has length 85 [2022-04-08 05:36:49,297 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:36:49,297 INFO L478 AbstractCegarLoop]: Abstraction has 265 states and 313 transitions. [2022-04-08 05:36:49,297 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:36:49,297 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 313 transitions. [2022-04-08 05:36:49,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 313 edges. 313 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:36:49,914 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 313 transitions. [2022-04-08 05:36:49,915 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-08 05:36:49,915 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:36:49,915 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:36:49,932 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 05:36:50,116 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,SelfDestructingSolverStorable21 [2022-04-08 05:36:50,116 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:36:50,118 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:36:50,118 INFO L85 PathProgramCache]: Analyzing trace with hash -1358919972, now seen corresponding path program 13 times [2022-04-08 05:36:50,118 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:36:50,118 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1177546789] [2022-04-08 05:36:50,120 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:36:50,120 INFO L85 PathProgramCache]: Analyzing trace with hash -1358919972, now seen corresponding path program 14 times [2022-04-08 05:36:50,120 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:36:50,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [184278505] [2022-04-08 05:36:50,121 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:36:50,121 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:36:50,140 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:36:50,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1941686767] [2022-04-08 05:36:50,140 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:36:50,140 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:36:50,140 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:36:50,145 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 05:36:50,149 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 05:36:50,241 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:36:50,241 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:36:50,242 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 05:36:50,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:36:50,260 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:36:51,320 INFO L272 TraceCheckUtils]: 0: Hoare triple {27497#true} call ULTIMATE.init(); {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 1: Hoare triple {27497#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 2: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27497#true} {27497#true} #82#return; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L272 TraceCheckUtils]: 4: Hoare triple {27497#true} call #t~ret7 := main(); {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 5: Hoare triple {27497#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L272 TraceCheckUtils]: 6: Hoare triple {27497#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 7: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 8: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 9: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27497#true} {27497#true} #64#return; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L272 TraceCheckUtils]: 11: Hoare triple {27497#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 13: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L290 TraceCheckUtils]: 14: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,321 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27497#true} {27497#true} #66#return; {27497#true} is VALID [2022-04-08 05:36:51,322 INFO L290 TraceCheckUtils]: 16: Hoare triple {27497#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27550#(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 05:36:51,322 INFO L290 TraceCheckUtils]: 17: Hoare triple {27550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27550#(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 05:36:51,322 INFO L290 TraceCheckUtils]: 18: Hoare triple {27550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {27550#(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 05:36:51,323 INFO L272 TraceCheckUtils]: 19: Hoare triple {27550#(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))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L290 TraceCheckUtils]: 20: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L290 TraceCheckUtils]: 21: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L290 TraceCheckUtils]: 22: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {27497#true} {27550#(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))} #68#return; {27550#(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 05:36:51,323 INFO L272 TraceCheckUtils]: 24: Hoare triple {27550#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L290 TraceCheckUtils]: 25: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L290 TraceCheckUtils]: 26: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,323 INFO L290 TraceCheckUtils]: 27: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,324 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {27497#true} {27550#(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))} #70#return; {27550#(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 05:36:51,324 INFO L272 TraceCheckUtils]: 29: Hoare triple {27550#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,324 INFO L290 TraceCheckUtils]: 30: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,324 INFO L290 TraceCheckUtils]: 31: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,324 INFO L290 TraceCheckUtils]: 32: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,325 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {27497#true} {27550#(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))} #72#return; {27550#(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 05:36:51,325 INFO L290 TraceCheckUtils]: 34: Hoare triple {27550#(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 !!(~a~0 != ~b~0); {27550#(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 05:36:51,326 INFO L290 TraceCheckUtils]: 35: Hoare triple {27550#(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 ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,326 INFO L290 TraceCheckUtils]: 36: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,327 INFO L290 TraceCheckUtils]: 37: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,327 INFO L272 TraceCheckUtils]: 38: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,327 INFO L290 TraceCheckUtils]: 39: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,327 INFO L290 TraceCheckUtils]: 40: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,327 INFO L290 TraceCheckUtils]: 41: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,327 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27497#true} {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #68#return; {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,327 INFO L272 TraceCheckUtils]: 43: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L290 TraceCheckUtils]: 44: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L290 TraceCheckUtils]: 45: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L290 TraceCheckUtils]: 46: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {27497#true} {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #70#return; {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,328 INFO L272 TraceCheckUtils]: 48: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L290 TraceCheckUtils]: 49: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L290 TraceCheckUtils]: 50: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,328 INFO L290 TraceCheckUtils]: 51: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,329 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27497#true} {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #72#return; {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,329 INFO L290 TraceCheckUtils]: 53: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~a~0 != ~b~0); {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,331 INFO L290 TraceCheckUtils]: 54: Hoare triple {27608#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-08 05:36:51,331 INFO L290 TraceCheckUtils]: 55: Hoare triple {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-08 05:36:51,332 INFO L290 TraceCheckUtils]: 56: Hoare triple {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} assume !!(#t~post6 < 10);havoc #t~post6; {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-08 05:36:51,332 INFO L272 TraceCheckUtils]: 57: Hoare triple {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,332 INFO L290 TraceCheckUtils]: 58: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,332 INFO L290 TraceCheckUtils]: 59: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,332 INFO L290 TraceCheckUtils]: 60: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,333 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {27497#true} {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #68#return; {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-08 05:36:51,333 INFO L272 TraceCheckUtils]: 62: Hoare triple {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,333 INFO L290 TraceCheckUtils]: 63: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,333 INFO L290 TraceCheckUtils]: 64: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,333 INFO L290 TraceCheckUtils]: 65: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,333 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {27497#true} {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #70#return; {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-08 05:36:51,333 INFO L272 TraceCheckUtils]: 67: Hoare triple {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,334 INFO L290 TraceCheckUtils]: 68: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,334 INFO L290 TraceCheckUtils]: 69: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,334 INFO L290 TraceCheckUtils]: 70: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,334 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {27497#true} {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #72#return; {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-08 05:36:51,335 INFO L290 TraceCheckUtils]: 72: Hoare triple {27666#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} assume !!(~a~0 != ~b~0); {27721#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-08 05:36:51,337 INFO L290 TraceCheckUtils]: 73: Hoare triple {27721#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)) (not (= main_~b~0 main_~a~0)))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-08 05:36:51,337 INFO L290 TraceCheckUtils]: 74: Hoare triple {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-08 05:36:51,338 INFO L290 TraceCheckUtils]: 75: Hoare triple {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-08 05:36:51,338 INFO L272 TraceCheckUtils]: 76: Hoare triple {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,338 INFO L290 TraceCheckUtils]: 77: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,338 INFO L290 TraceCheckUtils]: 78: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,338 INFO L290 TraceCheckUtils]: 79: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,338 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {27497#true} {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} #68#return; {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-08 05:36:51,338 INFO L272 TraceCheckUtils]: 81: Hoare triple {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:51,339 INFO L290 TraceCheckUtils]: 82: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:51,339 INFO L290 TraceCheckUtils]: 83: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:51,339 INFO L290 TraceCheckUtils]: 84: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:51,339 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {27497#true} {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} #70#return; {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-08 05:36:51,340 INFO L272 TraceCheckUtils]: 86: Hoare triple {27725#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27765#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:36:51,340 INFO L290 TraceCheckUtils]: 87: Hoare triple {27765#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27769#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:36:51,341 INFO L290 TraceCheckUtils]: 88: Hoare triple {27769#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27498#false} is VALID [2022-04-08 05:36:51,341 INFO L290 TraceCheckUtils]: 89: Hoare triple {27498#false} assume !false; {27498#false} is VALID [2022-04-08 05:36:51,341 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 22 proven. 36 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 05:36:51,341 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:36:52,006 INFO L290 TraceCheckUtils]: 89: Hoare triple {27498#false} assume !false; {27498#false} is VALID [2022-04-08 05:36:52,007 INFO L290 TraceCheckUtils]: 88: Hoare triple {27769#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27498#false} is VALID [2022-04-08 05:36:52,007 INFO L290 TraceCheckUtils]: 87: Hoare triple {27765#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27769#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:36:52,008 INFO L272 TraceCheckUtils]: 86: Hoare triple {27785#(= 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)); {27765#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:36:52,008 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {27497#true} {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:36:52,008 INFO L290 TraceCheckUtils]: 84: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,008 INFO L290 TraceCheckUtils]: 83: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,008 INFO L290 TraceCheckUtils]: 82: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,008 INFO L272 TraceCheckUtils]: 81: Hoare triple {27785#(= 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)); {27497#true} is VALID [2022-04-08 05:36:52,009 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {27497#true} {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:36:52,009 INFO L290 TraceCheckUtils]: 79: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,009 INFO L290 TraceCheckUtils]: 78: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,009 INFO L290 TraceCheckUtils]: 77: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,009 INFO L272 TraceCheckUtils]: 76: Hoare triple {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,009 INFO L290 TraceCheckUtils]: 75: Hoare triple {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:36:52,010 INFO L290 TraceCheckUtils]: 74: Hoare triple {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:36:52,129 INFO L290 TraceCheckUtils]: 73: Hoare triple {27825#(or (< main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {27785#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:36:52,130 INFO L290 TraceCheckUtils]: 72: Hoare triple {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(~a~0 != ~b~0); {27825#(or (< main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,131 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {27497#true} {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #72#return; {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,131 INFO L290 TraceCheckUtils]: 70: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,131 INFO L290 TraceCheckUtils]: 69: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,131 INFO L290 TraceCheckUtils]: 68: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,131 INFO L272 TraceCheckUtils]: 67: Hoare triple {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,131 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {27497#true} {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #70#return; {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,132 INFO L290 TraceCheckUtils]: 65: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L290 TraceCheckUtils]: 64: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L290 TraceCheckUtils]: 63: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L272 TraceCheckUtils]: 62: Hoare triple {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {27497#true} {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #68#return; {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,132 INFO L290 TraceCheckUtils]: 60: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L290 TraceCheckUtils]: 59: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L290 TraceCheckUtils]: 58: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,132 INFO L272 TraceCheckUtils]: 57: Hoare triple {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,133 INFO L290 TraceCheckUtils]: 56: Hoare triple {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,133 INFO L290 TraceCheckUtils]: 55: Hoare triple {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,452 INFO L290 TraceCheckUtils]: 54: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27829#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 05:36:52,453 INFO L290 TraceCheckUtils]: 53: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} assume !!(~a~0 != ~b~0); {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,454 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27497#true} {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #72#return; {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,454 INFO L290 TraceCheckUtils]: 51: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,454 INFO L290 TraceCheckUtils]: 50: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,454 INFO L290 TraceCheckUtils]: 49: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,454 INFO L272 TraceCheckUtils]: 48: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,455 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {27497#true} {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #70#return; {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,455 INFO L290 TraceCheckUtils]: 46: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,455 INFO L290 TraceCheckUtils]: 45: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,455 INFO L290 TraceCheckUtils]: 44: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,455 INFO L272 TraceCheckUtils]: 43: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,455 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27497#true} {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #68#return; {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,456 INFO L290 TraceCheckUtils]: 41: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,456 INFO L290 TraceCheckUtils]: 40: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,456 INFO L290 TraceCheckUtils]: 39: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,456 INFO L272 TraceCheckUtils]: 38: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,456 INFO L290 TraceCheckUtils]: 37: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,457 INFO L290 TraceCheckUtils]: 36: Hoare triple {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27884#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-08 05:36:52,764 INFO L290 TraceCheckUtils]: 34: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} assume !!(~a~0 != ~b~0); {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,764 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {27497#true} {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #72#return; {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,764 INFO L290 TraceCheckUtils]: 32: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,764 INFO L290 TraceCheckUtils]: 31: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,765 INFO L290 TraceCheckUtils]: 30: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,765 INFO L272 TraceCheckUtils]: 29: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,765 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {27497#true} {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #70#return; {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,765 INFO L290 TraceCheckUtils]: 27: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,765 INFO L290 TraceCheckUtils]: 26: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,765 INFO L290 TraceCheckUtils]: 25: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,765 INFO L272 TraceCheckUtils]: 24: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,766 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {27497#true} {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #68#return; {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,766 INFO L290 TraceCheckUtils]: 22: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,766 INFO L290 TraceCheckUtils]: 21: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,766 INFO L290 TraceCheckUtils]: 20: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,766 INFO L272 TraceCheckUtils]: 19: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,767 INFO L290 TraceCheckUtils]: 16: Hoare triple {27497#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27942#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-08 05:36:52,768 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27497#true} {27497#true} #66#return; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 14: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 13: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 12: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L272 TraceCheckUtils]: 11: Hoare triple {27497#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27497#true} {27497#true} #64#return; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 9: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 8: Hoare triple {27497#true} assume !(0 == ~cond); {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 7: Hoare triple {27497#true} ~cond := #in~cond; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L272 TraceCheckUtils]: 6: Hoare triple {27497#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 5: Hoare triple {27497#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~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; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L272 TraceCheckUtils]: 4: Hoare triple {27497#true} call #t~ret7 := main(); {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27497#true} {27497#true} #82#return; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {27497#true} assume true; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {27497#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27497#true} is VALID [2022-04-08 05:36:52,768 INFO L272 TraceCheckUtils]: 0: Hoare triple {27497#true} call ULTIMATE.init(); {27497#true} is VALID [2022-04-08 05:36:52,769 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 22 proven. 36 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 05:36:52,769 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:36:52,769 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [184278505] [2022-04-08 05:36:52,769 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:36:52,769 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1941686767] [2022-04-08 05:36:52,769 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1941686767] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:36:52,769 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:36:52,769 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 05:36:52,769 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:36:52,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1177546789] [2022-04-08 05:36:52,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1177546789] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:36:52,770 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:36:52,770 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:36:52,770 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1299178567] [2022-04-08 05:36:52,770 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:36:52,770 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 90 [2022-04-08 05:36:52,770 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:36:52,770 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:36:52,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:36:52,838 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:36:52,838 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:36:52,838 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:36:52,839 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=134, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:36:52,839 INFO L87 Difference]: Start difference. First operand 265 states and 313 transitions. Second operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:36:54,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:36:54,940 INFO L93 Difference]: Finished difference Result 291 states and 354 transitions. [2022-04-08 05:36:54,940 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:36:54,940 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 90 [2022-04-08 05:36:54,940 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:36:54,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:36:54,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 97 transitions. [2022-04-08 05:36:54,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:36:54,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 97 transitions. [2022-04-08 05:36:54,943 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 97 transitions. [2022-04-08 05:36:55,053 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 05:36:55,058 INFO L225 Difference]: With dead ends: 291 [2022-04-08 05:36:55,059 INFO L226 Difference]: Without dead ends: 285 [2022-04-08 05:36:55,059 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 166 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:36:55,059 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 10 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 292 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 302 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 292 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-08 05:36:55,059 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 246 Invalid, 302 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 292 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-08 05:36:55,060 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 285 states. [2022-04-08 05:36:55,339 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 285 to 269. [2022-04-08 05:36:55,339 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:36:55,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 285 states. Second operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-08 05:36:55,340 INFO L74 IsIncluded]: Start isIncluded. First operand 285 states. Second operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-08 05:36:55,340 INFO L87 Difference]: Start difference. First operand 285 states. Second operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-08 05:36:55,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:36:55,344 INFO L93 Difference]: Finished difference Result 285 states and 342 transitions. [2022-04-08 05:36:55,344 INFO L276 IsEmpty]: Start isEmpty. Operand 285 states and 342 transitions. [2022-04-08 05:36:55,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:36:55,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:36:55,345 INFO L74 IsIncluded]: Start isIncluded. First operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) Second operand 285 states. [2022-04-08 05:36:55,346 INFO L87 Difference]: Start difference. First operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) Second operand 285 states. [2022-04-08 05:36:55,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:36:55,350 INFO L93 Difference]: Finished difference Result 285 states and 342 transitions. [2022-04-08 05:36:55,350 INFO L276 IsEmpty]: Start isEmpty. Operand 285 states and 342 transitions. [2022-04-08 05:36:55,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:36:55,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:36:55,350 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:36:55,350 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:36:55,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-08 05:36:55,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 269 states to 269 states and 319 transitions. [2022-04-08 05:36:55,355 INFO L78 Accepts]: Start accepts. Automaton has 269 states and 319 transitions. Word has length 90 [2022-04-08 05:36:55,355 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:36:55,355 INFO L478 AbstractCegarLoop]: Abstraction has 269 states and 319 transitions. [2022-04-08 05:36:55,356 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:36:55,356 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 269 states and 319 transitions. [2022-04-08 05:36:56,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 319 edges. 319 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:36:56,049 INFO L276 IsEmpty]: Start isEmpty. Operand 269 states and 319 transitions. [2022-04-08 05:36:56,050 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-08 05:36:56,050 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:36:56,050 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:36:56,070 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-08 05:36:56,251 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable22 [2022-04-08 05:36:56,252 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:36:56,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:36:56,252 INFO L85 PathProgramCache]: Analyzing trace with hash -1753286758, now seen corresponding path program 15 times [2022-04-08 05:36:56,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:36:56,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2117632504] [2022-04-08 05:36:56,252 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:36:56,252 INFO L85 PathProgramCache]: Analyzing trace with hash -1753286758, now seen corresponding path program 16 times [2022-04-08 05:36:56,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:36:56,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [169644226] [2022-04-08 05:36:56,252 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:36:56,253 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:36:56,261 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:36:56,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1826947910] [2022-04-08 05:36:56,261 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:36:56,261 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:36:56,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:36:56,262 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:36:56,274 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-08 05:36:56,311 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:36:56,312 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:36:56,313 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-08 05:36:56,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:36:56,458 INFO L286 TraceCheckSpWp]: Computing forward predicates...