/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_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:34:24,647 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:34:24,648 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:34:24,713 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:34:24,713 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:34:24,714 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:34:24,715 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:34:24,716 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:34:24,718 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:34:24,718 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:34:24,719 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:34:24,719 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:34:24,720 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:34:24,720 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:34:24,721 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:34:24,721 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:34:24,722 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:34:24,723 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:34:24,724 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:34:24,725 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:34:24,726 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:34:24,726 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:34:24,727 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:34:24,728 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:34:24,728 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:34:24,730 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:34:24,731 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:34:24,731 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:34:24,732 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:34:24,732 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:34:24,733 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:34:24,733 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:34:24,733 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:34:24,734 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:34:24,734 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:34:24,735 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:34:24,735 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:34:24,736 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:34:24,736 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:34:24,736 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:34:24,737 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:34:24,747 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:34:24,747 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:34:24,754 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:34:24,754 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:34:24,755 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:34:24,755 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:34:24,755 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:34:24,755 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:34:24,755 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:34:24,756 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:34:24,756 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:34:24,757 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:34:24,757 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:34:24,757 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:34:24,757 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:34:24,757 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:34:24,757 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:34:24,757 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:34:24,758 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:34:24,758 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:34:24,758 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:34:24,758 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 05:34:24,914 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:34:24,933 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:34:24,938 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:34:24,939 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:34:24,940 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:34:24,941 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_valuebound2.c [2022-04-28 05:34:24,992 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f9a7af65c/8b9fdcb8119d49079c42ac8b735c6903/FLAG0d5b069e8 [2022-04-28 05:34:25,320 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:34:25,321 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_valuebound2.c [2022-04-28 05:34:25,325 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f9a7af65c/8b9fdcb8119d49079c42ac8b735c6903/FLAG0d5b069e8 [2022-04-28 05:34:25,334 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f9a7af65c/8b9fdcb8119d49079c42ac8b735c6903 [2022-04-28 05:34:25,336 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:34:25,337 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:34:25,340 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:34:25,340 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:34:25,343 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:34:25,347 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,348 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7e5a3235 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25, skipping insertion in model container [2022-04-28 05:34:25,348 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,354 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:34:25,365 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:34:25,497 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_valuebound2.c[489,502] [2022-04-28 05:34:25,512 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:34:25,519 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:34:25,527 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_valuebound2.c[489,502] [2022-04-28 05:34:25,539 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:34:25,555 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:34:25,556 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25 WrapperNode [2022-04-28 05:34:25,556 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:34:25,557 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:34:25,557 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:34:25,557 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:34:25,565 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,566 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,574 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,575 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,580 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,583 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,584 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,585 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:34:25,586 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:34:25,586 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:34:25,586 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:34:25,591 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (1/1) ... [2022-04-28 05:34:25,597 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:34:25,606 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:34:25,618 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 05:34:25,637 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 05:34:25,649 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:34:25,650 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:34:25,650 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:34:25,650 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:34:25,650 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:34:25,650 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:34:25,650 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:34:25,650 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:34:25,651 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:34:25,651 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:34:25,651 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:34:25,651 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:34:25,652 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:34:25,701 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:34:25,703 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:34:25,836 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:34:25,841 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:34:25,841 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 05:34:25,843 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:34:25 BoogieIcfgContainer [2022-04-28 05:34:25,843 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:34:25,844 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:34:25,844 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:34:25,853 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:34:25,853 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:34:25" (1/3) ... [2022-04-28 05:34:25,854 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1395ac3d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:34:25, skipping insertion in model container [2022-04-28 05:34:25,854 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:34:25" (2/3) ... [2022-04-28 05:34:25,854 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1395ac3d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:34:25, skipping insertion in model container [2022-04-28 05:34:25,854 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:34:25" (3/3) ... [2022-04-28 05:34:25,855 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_valuebound2.c [2022-04-28 05:34:25,865 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:34:25,865 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:34:25,914 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:34:25,919 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@2f8566e8, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6d6ebdcd [2022-04-28 05:34:25,919 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:34:25,926 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 13 states have call successors, (13), 4 states have call predecessors, (13), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:34:25,946 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 05:34:25,946 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:34:25,946 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:34:25,950 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:34:25,953 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:34:25,954 INFO L85 PathProgramCache]: Analyzing trace with hash 870870740, now seen corresponding path program 1 times [2022-04-28 05:34:25,963 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:34:25,963 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [780401005] [2022-04-28 05:34:25,971 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:34:25,973 INFO L85 PathProgramCache]: Analyzing trace with hash 870870740, now seen corresponding path program 2 times [2022-04-28 05:34:25,976 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:34:25,977 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [429076203] [2022-04-28 05:34:25,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:34:25,978 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:34:26,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,104 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:34:26,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,120 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-28 05:34:26,120 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 05:34:26,120 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #88#return; {40#true} is VALID [2022-04-28 05:34:26,121 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:34:26,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,128 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,129 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #66#return; {41#false} is VALID [2022-04-28 05:34:26,129 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 05:34:26,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,136 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,136 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #68#return; {41#false} is VALID [2022-04-28 05:34:26,137 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 05:34:26,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,152 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,153 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #70#return; {41#false} is VALID [2022-04-28 05:34:26,154 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 05:34:26,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,166 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,166 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,166 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #72#return; {41#false} is VALID [2022-04-28 05:34:26,168 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:34:26,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-28 05:34:26,168 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 05:34:26,168 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #88#return; {40#true} is VALID [2022-04-28 05:34:26,169 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-28 05:34:26,169 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#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; {40#true} is VALID [2022-04-28 05:34:26,169 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {40#true} is VALID [2022-04-28 05:34:26,169 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,170 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,170 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,170 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #66#return; {41#false} is VALID [2022-04-28 05:34:26,170 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41#false} is VALID [2022-04-28 05:34:26,170 INFO L272 TraceCheckUtils]: 12: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {40#true} is VALID [2022-04-28 05:34:26,170 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,172 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,172 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,173 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {41#false} {41#false} #68#return; {41#false} is VALID [2022-04-28 05:34:26,173 INFO L272 TraceCheckUtils]: 17: Hoare triple {41#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-28 05:34:26,173 INFO L290 TraceCheckUtils]: 18: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,174 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,174 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,174 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41#false} {41#false} #70#return; {41#false} is VALID [2022-04-28 05:34:26,174 INFO L272 TraceCheckUtils]: 22: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-28 05:34:26,174 INFO L290 TraceCheckUtils]: 23: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:34:26,175 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:34:26,175 INFO L290 TraceCheckUtils]: 25: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:34:26,175 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41#false} {41#false} #72#return; {41#false} is VALID [2022-04-28 05:34:26,175 INFO L290 TraceCheckUtils]: 27: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-28 05:34:26,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-28 05:34:26,176 INFO L272 TraceCheckUtils]: 29: Hoare triple {41#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {41#false} is VALID [2022-04-28 05:34:26,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-28 05:34:26,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-28 05:34:26,176 INFO L290 TraceCheckUtils]: 32: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-28 05:34:26,177 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:34:26,177 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:34:26,177 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [429076203] [2022-04-28 05:34:26,178 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [429076203] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:34:26,178 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:34:26,178 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:34:26,180 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:34:26,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [780401005] [2022-04-28 05:34:26,180 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [780401005] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:34:26,180 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:34:26,181 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:34:26,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1091537658] [2022-04-28 05:34:26,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:34:26,185 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 05:34:26,186 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:34:26,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:34:26,212 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:34:26,212 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:34:26,212 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:34:26,232 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:34:26,232 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:34:26,234 INFO L87 Difference]: Start difference. First operand has 37 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 13 states have call successors, (13), 4 states have call predecessors, (13), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:34:26,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:34:26,365 INFO L93 Difference]: Finished difference Result 67 states and 105 transitions. [2022-04-28 05:34:26,365 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:34:26,365 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 05:34:26,365 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:34:26,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:34:26,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 105 transitions. [2022-04-28 05:34:26,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:34:26,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 105 transitions. [2022-04-28 05:34:26,388 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 105 transitions. [2022-04-28 05:34:26,502 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:34:26,513 INFO L225 Difference]: With dead ends: 67 [2022-04-28 05:34:26,513 INFO L226 Difference]: Without dead ends: 32 [2022-04-28 05:34:26,517 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:34:26,520 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 18 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:34:26,521 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 39 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:34:26,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-28 05:34:26,561 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-28 05:34:26,561 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:34:26,562 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:34:26,562 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:34:26,563 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:34:26,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:34:26,567 INFO L93 Difference]: Finished difference Result 32 states and 42 transitions. [2022-04-28 05:34:26,567 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-28 05:34:26,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:34:26,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:34:26,568 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 32 states. [2022-04-28 05:34:26,568 INFO L87 Difference]: Start difference. First operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 32 states. [2022-04-28 05:34:26,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:34:26,577 INFO L93 Difference]: Finished difference Result 32 states and 42 transitions. [2022-04-28 05:34:26,577 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-28 05:34:26,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:34:26,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:34:26,578 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:34:26,578 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:34:26,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:34:26,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-28 05:34:26,591 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 33 [2022-04-28 05:34:26,591 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:34:26,591 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-28 05:34:26,591 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:34:26,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 42 transitions. [2022-04-28 05:34:26,633 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-28 05:34:26,633 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-28 05:34:26,635 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 05:34:26,636 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:34:26,636 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:34:26,636 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:34:26,636 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:34:26,637 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:34:26,637 INFO L85 PathProgramCache]: Analyzing trace with hash -1006914976, now seen corresponding path program 1 times [2022-04-28 05:34:26,638 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:34:26,638 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1667923823] [2022-04-28 05:34:26,641 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:34:26,641 INFO L85 PathProgramCache]: Analyzing trace with hash -1006914976, now seen corresponding path program 2 times [2022-04-28 05:34:26,642 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:34:26,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [269681084] [2022-04-28 05:34:26,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:34:26,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:34:26,692 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:34:26,692 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [375207255] [2022-04-28 05:34:26,692 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:34:26,692 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:34:26,693 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:34:26,694 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:34:26,695 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 05:34:26,739 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:34:26,739 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:34:26,741 INFO L263 TraceCheckSpWp]: Trace formula consists of 74 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:34:26,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:26,772 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:34:29,459 INFO L272 TraceCheckUtils]: 0: Hoare triple {326#true} call ULTIMATE.init(); {326#true} is VALID [2022-04-28 05:34:29,459 INFO L290 TraceCheckUtils]: 1: Hoare triple {326#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); {326#true} is VALID [2022-04-28 05:34:29,459 INFO L290 TraceCheckUtils]: 2: Hoare triple {326#true} assume true; {326#true} is VALID [2022-04-28 05:34:29,459 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {326#true} {326#true} #88#return; {326#true} is VALID [2022-04-28 05:34:29,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {326#true} call #t~ret6 := main(); {326#true} is VALID [2022-04-28 05:34:29,460 INFO L290 TraceCheckUtils]: 5: Hoare triple {326#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; {326#true} is VALID [2022-04-28 05:34:29,460 INFO L272 TraceCheckUtils]: 6: Hoare triple {326#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {326#true} is VALID [2022-04-28 05:34:29,460 INFO L290 TraceCheckUtils]: 7: Hoare triple {326#true} ~cond := #in~cond; {326#true} is VALID [2022-04-28 05:34:29,460 INFO L290 TraceCheckUtils]: 8: Hoare triple {326#true} assume !(0 == ~cond); {326#true} is VALID [2022-04-28 05:34:29,460 INFO L290 TraceCheckUtils]: 9: Hoare triple {326#true} assume true; {326#true} is VALID [2022-04-28 05:34:29,460 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {326#true} {326#true} #66#return; {326#true} is VALID [2022-04-28 05:34:29,460 INFO L290 TraceCheckUtils]: 11: Hoare triple {326#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {326#true} is VALID [2022-04-28 05:34:29,461 INFO L272 TraceCheckUtils]: 12: Hoare triple {326#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {326#true} is VALID [2022-04-28 05:34:29,461 INFO L290 TraceCheckUtils]: 13: Hoare triple {326#true} ~cond := #in~cond; {326#true} is VALID [2022-04-28 05:34:29,461 INFO L290 TraceCheckUtils]: 14: Hoare triple {326#true} assume !(0 == ~cond); {326#true} is VALID [2022-04-28 05:34:29,461 INFO L290 TraceCheckUtils]: 15: Hoare triple {326#true} assume true; {326#true} is VALID [2022-04-28 05:34:29,461 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {326#true} {326#true} #68#return; {326#true} is VALID [2022-04-28 05:34:29,461 INFO L272 TraceCheckUtils]: 17: Hoare triple {326#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {326#true} is VALID [2022-04-28 05:34:29,461 INFO L290 TraceCheckUtils]: 18: Hoare triple {326#true} ~cond := #in~cond; {326#true} is VALID [2022-04-28 05:34:29,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {326#true} assume !(0 == ~cond); {326#true} is VALID [2022-04-28 05:34:29,462 INFO L290 TraceCheckUtils]: 20: Hoare triple {326#true} assume true; {326#true} is VALID [2022-04-28 05:34:29,462 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {326#true} {326#true} #70#return; {326#true} is VALID [2022-04-28 05:34:29,462 INFO L272 TraceCheckUtils]: 22: Hoare triple {326#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {326#true} is VALID [2022-04-28 05:34:29,462 INFO L290 TraceCheckUtils]: 23: Hoare triple {326#true} ~cond := #in~cond; {326#true} is VALID [2022-04-28 05:34:29,462 INFO L290 TraceCheckUtils]: 24: Hoare triple {326#true} assume !(0 == ~cond); {326#true} is VALID [2022-04-28 05:34:29,462 INFO L290 TraceCheckUtils]: 25: Hoare triple {326#true} assume true; {326#true} is VALID [2022-04-28 05:34:29,462 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {326#true} {326#true} #72#return; {326#true} is VALID [2022-04-28 05:34:29,463 INFO L290 TraceCheckUtils]: 27: Hoare triple {326#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {412#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:34:29,464 INFO L290 TraceCheckUtils]: 28: Hoare triple {412#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {412#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:34:29,464 INFO L272 TraceCheckUtils]: 29: Hoare triple {412#(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)); {419#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:34:29,465 INFO L290 TraceCheckUtils]: 30: Hoare triple {419#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {423#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:34:29,465 INFO L290 TraceCheckUtils]: 31: Hoare triple {423#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {327#false} is VALID [2022-04-28 05:34:29,465 INFO L290 TraceCheckUtils]: 32: Hoare triple {327#false} assume !false; {327#false} is VALID [2022-04-28 05:34:29,465 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:34:29,465 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:34:29,466 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:34:29,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [269681084] [2022-04-28 05:34:29,466 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:34:29,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [375207255] [2022-04-28 05:34:29,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [375207255] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:34:29,466 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:34:29,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:34:29,467 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:34:29,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1667923823] [2022-04-28 05:34:29,467 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1667923823] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:34:29,467 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:34:29,467 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:34:29,467 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [637511500] [2022-04-28 05:34:29,468 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:34:29,468 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-28 05:34:29,468 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:34:29,468 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:34:29,482 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:34:29,482 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:34:29,483 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:34:29,483 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:34:29,483 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:34:29,483 INFO L87 Difference]: Start difference. First operand 32 states and 42 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:34:29,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:34:29,722 INFO L93 Difference]: Finished difference Result 48 states and 65 transitions. [2022-04-28 05:34:29,722 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:34:29,723 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-28 05:34:29,723 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:34:29,723 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:34:29,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:34:29,730 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:34:29,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:34:29,733 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:34:29,790 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:34:29,793 INFO L225 Difference]: With dead ends: 48 [2022-04-28 05:34:29,793 INFO L226 Difference]: Without dead ends: 46 [2022-04-28 05:34:29,793 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:34:29,795 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 7 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:34:29,797 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 143 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:34:29,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-28 05:34:29,806 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2022-04-28 05:34:29,806 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:34:29,807 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:34:29,807 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:34:29,808 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:34:29,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:34:29,813 INFO L93 Difference]: Finished difference Result 46 states and 63 transitions. [2022-04-28 05:34:29,813 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-28 05:34:29,813 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:34:29,813 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:34:29,814 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 46 states. [2022-04-28 05:34:29,814 INFO L87 Difference]: Start difference. First operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 46 states. [2022-04-28 05:34:29,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:34:29,817 INFO L93 Difference]: Finished difference Result 46 states and 63 transitions. [2022-04-28 05:34:29,817 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-28 05:34:29,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:34:29,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:34:29,818 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:34:29,818 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:34:29,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:34:29,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 62 transitions. [2022-04-28 05:34:29,821 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 62 transitions. Word has length 33 [2022-04-28 05:34:29,821 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:34:29,821 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 62 transitions. [2022-04-28 05:34:29,821 INFO L496 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:34:29,821 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 45 states and 62 transitions. [2022-04-28 05:34:29,883 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-28 05:34:29,884 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-28 05:34:29,884 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-28 05:34:29,885 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:34:29,885 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:34:29,905 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 05:34:30,097 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:34:30,097 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:34:30,098 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:34:30,098 INFO L85 PathProgramCache]: Analyzing trace with hash -124657161, now seen corresponding path program 1 times [2022-04-28 05:34:30,098 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:34:30,098 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1495983570] [2022-04-28 05:34:30,098 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:34:30,098 INFO L85 PathProgramCache]: Analyzing trace with hash -124657161, now seen corresponding path program 2 times [2022-04-28 05:34:30,098 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:34:30,099 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1512810613] [2022-04-28 05:34:30,099 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:34:30,099 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:34:30,115 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:34:30,116 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1682693427] [2022-04-28 05:34:30,116 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:34:30,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:34:30,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:34:30,117 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:34:30,118 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 05:34:30,153 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:34:30,154 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:34:30,155 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:34:30,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:34:30,169 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:34:33,228 INFO L272 TraceCheckUtils]: 0: Hoare triple {709#true} call ULTIMATE.init(); {709#true} is VALID [2022-04-28 05:34:33,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {709#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); {709#true} is VALID [2022-04-28 05:34:33,229 INFO L290 TraceCheckUtils]: 2: Hoare triple {709#true} assume true; {709#true} is VALID [2022-04-28 05:34:33,229 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {709#true} {709#true} #88#return; {709#true} is VALID [2022-04-28 05:34:33,229 INFO L272 TraceCheckUtils]: 4: Hoare triple {709#true} call #t~ret6 := main(); {709#true} is VALID [2022-04-28 05:34:33,229 INFO L290 TraceCheckUtils]: 5: Hoare triple {709#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; {709#true} is VALID [2022-04-28 05:34:33,229 INFO L272 TraceCheckUtils]: 6: Hoare triple {709#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {709#true} is VALID [2022-04-28 05:34:33,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {709#true} ~cond := #in~cond; {709#true} is VALID [2022-04-28 05:34:33,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {709#true} assume !(0 == ~cond); {709#true} is VALID [2022-04-28 05:34:33,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {709#true} assume true; {709#true} is VALID [2022-04-28 05:34:33,230 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {709#true} {709#true} #66#return; {709#true} is VALID [2022-04-28 05:34:33,230 INFO L290 TraceCheckUtils]: 11: Hoare triple {709#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {709#true} is VALID [2022-04-28 05:34:33,230 INFO L272 TraceCheckUtils]: 12: Hoare triple {709#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {709#true} is VALID [2022-04-28 05:34:33,230 INFO L290 TraceCheckUtils]: 13: Hoare triple {709#true} ~cond := #in~cond; {709#true} is VALID [2022-04-28 05:34:33,230 INFO L290 TraceCheckUtils]: 14: Hoare triple {709#true} assume !(0 == ~cond); {709#true} is VALID [2022-04-28 05:34:33,231 INFO L290 TraceCheckUtils]: 15: Hoare triple {709#true} assume true; {709#true} is VALID [2022-04-28 05:34:33,231 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {709#true} {709#true} #68#return; {709#true} is VALID [2022-04-28 05:34:33,231 INFO L272 TraceCheckUtils]: 17: Hoare triple {709#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {709#true} is VALID [2022-04-28 05:34:33,235 INFO L290 TraceCheckUtils]: 18: Hoare triple {709#true} ~cond := #in~cond; {768#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:34:33,236 INFO L290 TraceCheckUtils]: 19: Hoare triple {768#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {772#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:34:33,236 INFO L290 TraceCheckUtils]: 20: Hoare triple {772#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {772#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:34:33,237 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {772#(not (= |assume_abort_if_not_#in~cond| 0))} {709#true} #70#return; {779#(<= 1 main_~x~0)} is VALID [2022-04-28 05:34:33,237 INFO L272 TraceCheckUtils]: 22: Hoare triple {779#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {709#true} is VALID [2022-04-28 05:34:33,237 INFO L290 TraceCheckUtils]: 23: Hoare triple {709#true} ~cond := #in~cond; {709#true} is VALID [2022-04-28 05:34:33,237 INFO L290 TraceCheckUtils]: 24: Hoare triple {709#true} assume !(0 == ~cond); {709#true} is VALID [2022-04-28 05:34:33,237 INFO L290 TraceCheckUtils]: 25: Hoare triple {709#true} assume true; {709#true} is VALID [2022-04-28 05:34:33,238 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {709#true} {779#(<= 1 main_~x~0)} #72#return; {779#(<= 1 main_~x~0)} is VALID [2022-04-28 05:34:33,238 INFO L290 TraceCheckUtils]: 27: Hoare triple {779#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {798#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:34:33,239 INFO L290 TraceCheckUtils]: 28: Hoare triple {798#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {798#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:34:33,239 INFO L272 TraceCheckUtils]: 29: Hoare triple {798#(and (= main_~r~0 0) (<= 1 main_~x~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)); {709#true} is VALID [2022-04-28 05:34:33,239 INFO L290 TraceCheckUtils]: 30: Hoare triple {709#true} ~cond := #in~cond; {709#true} is VALID [2022-04-28 05:34:33,239 INFO L290 TraceCheckUtils]: 31: Hoare triple {709#true} assume !(0 == ~cond); {709#true} is VALID [2022-04-28 05:34:33,239 INFO L290 TraceCheckUtils]: 32: Hoare triple {709#true} assume true; {709#true} is VALID [2022-04-28 05:34:33,240 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {709#true} {798#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #74#return; {798#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:34:33,240 INFO L272 TraceCheckUtils]: 34: Hoare triple {798#(and (= main_~r~0 0) (<= 1 main_~x~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)); {820#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:34:33,241 INFO L290 TraceCheckUtils]: 35: Hoare triple {820#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {824#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:34:33,241 INFO L290 TraceCheckUtils]: 36: Hoare triple {824#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {710#false} is VALID [2022-04-28 05:34:33,241 INFO L290 TraceCheckUtils]: 37: Hoare triple {710#false} assume !false; {710#false} is VALID [2022-04-28 05:34:33,242 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 05:34:33,242 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:11,993 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:11,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1512810613] [2022-04-28 05:35:11,993 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:11,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1682693427] [2022-04-28 05:35:11,993 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1682693427] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:35:11,993 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:35:11,993 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2022-04-28 05:35:11,994 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:11,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1495983570] [2022-04-28 05:35:11,994 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1495983570] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:11,994 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:11,994 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:11,994 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1489695461] [2022-04-28 05:35:11,994 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:11,995 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 38 [2022-04-28 05:35:11,995 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:11,995 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:35:12,016 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-28 05:35:12,016 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:35:12,017 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:12,017 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:35:12,017 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:35:12,017 INFO L87 Difference]: Start difference. First operand 45 states and 62 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:35:12,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:12,401 INFO L93 Difference]: Finished difference Result 52 states and 68 transitions. [2022-04-28 05:35:12,401 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:35:12,402 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 38 [2022-04-28 05:35:12,403 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:12,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:35:12,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 65 transitions. [2022-04-28 05:35:12,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:35:12,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 65 transitions. [2022-04-28 05:35:12,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 65 transitions. [2022-04-28 05:35:12,459 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:12,464 INFO L225 Difference]: With dead ends: 52 [2022-04-28 05:35:12,464 INFO L226 Difference]: Without dead ends: 50 [2022-04-28 05:35:12,465 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 34 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:35:12,471 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 20 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 134 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:12,472 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 161 Invalid, 134 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:12,473 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-28 05:35:12,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 49. [2022-04-28 05:35:12,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:12,498 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:35:12,499 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:35:12,499 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:35:12,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:12,502 INFO L93 Difference]: Finished difference Result 50 states and 66 transitions. [2022-04-28 05:35:12,502 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-28 05:35:12,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:12,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:12,503 INFO L74 IsIncluded]: Start isIncluded. First operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 50 states. [2022-04-28 05:35:12,504 INFO L87 Difference]: Start difference. First operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 50 states. [2022-04-28 05:35:12,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:12,506 INFO L93 Difference]: Finished difference Result 50 states and 66 transitions. [2022-04-28 05:35:12,506 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-28 05:35:12,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:12,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:12,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:12,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:12,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:35:12,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 65 transitions. [2022-04-28 05:35:12,509 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 65 transitions. Word has length 38 [2022-04-28 05:35:12,509 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:12,509 INFO L495 AbstractCegarLoop]: Abstraction has 49 states and 65 transitions. [2022-04-28 05:35:12,509 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:35:12,509 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 49 states and 65 transitions. [2022-04-28 05:35:12,568 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:12,569 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-28 05:35:12,570 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 05:35:12,571 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:12,571 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:12,591 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:12,788 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 05:35:12,788 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:12,789 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:12,789 INFO L85 PathProgramCache]: Analyzing trace with hash 1732898944, now seen corresponding path program 1 times [2022-04-28 05:35:12,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:12,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [262966133] [2022-04-28 05:35:12,789 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:12,789 INFO L85 PathProgramCache]: Analyzing trace with hash 1732898944, now seen corresponding path program 2 times [2022-04-28 05:35:12,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:12,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1409252937] [2022-04-28 05:35:12,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:12,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:12,811 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:12,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [761469111] [2022-04-28 05:35:12,812 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:35:12,812 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:12,812 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:12,813 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:12,814 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 05:35:12,851 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:35:12,851 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:12,852 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:35:12,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:12,866 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:17,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {1152#true} call ULTIMATE.init(); {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L290 TraceCheckUtils]: 1: Hoare triple {1152#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); {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L290 TraceCheckUtils]: 2: Hoare triple {1152#true} assume true; {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1152#true} {1152#true} #88#return; {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L272 TraceCheckUtils]: 4: Hoare triple {1152#true} call #t~ret6 := main(); {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L290 TraceCheckUtils]: 5: Hoare triple {1152#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; {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L272 TraceCheckUtils]: 6: Hoare triple {1152#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L290 TraceCheckUtils]: 7: Hoare triple {1152#true} ~cond := #in~cond; {1152#true} is VALID [2022-04-28 05:35:17,093 INFO L290 TraceCheckUtils]: 8: Hoare triple {1152#true} assume !(0 == ~cond); {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {1152#true} assume true; {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1152#true} {1152#true} #66#return; {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L290 TraceCheckUtils]: 11: Hoare triple {1152#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L272 TraceCheckUtils]: 12: Hoare triple {1152#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L290 TraceCheckUtils]: 13: Hoare triple {1152#true} ~cond := #in~cond; {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L290 TraceCheckUtils]: 14: Hoare triple {1152#true} assume !(0 == ~cond); {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L290 TraceCheckUtils]: 15: Hoare triple {1152#true} assume true; {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1152#true} {1152#true} #68#return; {1152#true} is VALID [2022-04-28 05:35:17,094 INFO L272 TraceCheckUtils]: 17: Hoare triple {1152#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1152#true} is VALID [2022-04-28 05:35:17,095 INFO L290 TraceCheckUtils]: 18: Hoare triple {1152#true} ~cond := #in~cond; {1152#true} is VALID [2022-04-28 05:35:17,095 INFO L290 TraceCheckUtils]: 19: Hoare triple {1152#true} assume !(0 == ~cond); {1152#true} is VALID [2022-04-28 05:35:17,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {1152#true} assume true; {1152#true} is VALID [2022-04-28 05:35:17,095 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1152#true} {1152#true} #70#return; {1152#true} is VALID [2022-04-28 05:35:17,095 INFO L272 TraceCheckUtils]: 22: Hoare triple {1152#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1152#true} is VALID [2022-04-28 05:35:17,096 INFO L290 TraceCheckUtils]: 23: Hoare triple {1152#true} ~cond := #in~cond; {1226#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:17,096 INFO L290 TraceCheckUtils]: 24: Hoare triple {1226#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1230#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:17,096 INFO L290 TraceCheckUtils]: 25: Hoare triple {1230#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1230#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:17,097 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1230#(not (= |assume_abort_if_not_#in~cond| 0))} {1152#true} #72#return; {1237#(<= 1 main_~y~0)} is VALID [2022-04-28 05:35:17,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {1237#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:35:17,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !false; {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:35:17,098 INFO L272 TraceCheckUtils]: 29: Hoare triple {1241#(and (= main_~s~0 1) (= 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)); {1152#true} is VALID [2022-04-28 05:35:17,098 INFO L290 TraceCheckUtils]: 30: Hoare triple {1152#true} ~cond := #in~cond; {1152#true} is VALID [2022-04-28 05:35:17,098 INFO L290 TraceCheckUtils]: 31: Hoare triple {1152#true} assume !(0 == ~cond); {1152#true} is VALID [2022-04-28 05:35:17,099 INFO L290 TraceCheckUtils]: 32: Hoare triple {1152#true} assume true; {1152#true} is VALID [2022-04-28 05:35:17,099 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1152#true} {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #74#return; {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:35:17,099 INFO L272 TraceCheckUtils]: 34: Hoare triple {1241#(and (= main_~s~0 1) (= 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)); {1152#true} is VALID [2022-04-28 05:35:17,100 INFO L290 TraceCheckUtils]: 35: Hoare triple {1152#true} ~cond := #in~cond; {1152#true} is VALID [2022-04-28 05:35:17,100 INFO L290 TraceCheckUtils]: 36: Hoare triple {1152#true} assume !(0 == ~cond); {1152#true} is VALID [2022-04-28 05:35:17,100 INFO L290 TraceCheckUtils]: 37: Hoare triple {1152#true} assume true; {1152#true} is VALID [2022-04-28 05:35:17,100 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1152#true} {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #76#return; {1241#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:35:17,101 INFO L272 TraceCheckUtils]: 39: Hoare triple {1241#(and (= main_~s~0 1) (= 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)); {1278#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:17,102 INFO L290 TraceCheckUtils]: 40: Hoare triple {1278#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1282#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:17,102 INFO L290 TraceCheckUtils]: 41: Hoare triple {1282#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1153#false} is VALID [2022-04-28 05:35:17,102 INFO L290 TraceCheckUtils]: 42: Hoare triple {1153#false} assume !false; {1153#false} is VALID [2022-04-28 05:35:17,102 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:35:17,103 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:35:17,103 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:17,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1409252937] [2022-04-28 05:35:17,103 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:17,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [761469111] [2022-04-28 05:35:17,103 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [761469111] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:17,103 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:17,103 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:17,104 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:17,104 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [262966133] [2022-04-28 05:35:17,104 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [262966133] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:17,104 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:17,104 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:17,104 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1027017646] [2022-04-28 05:35:17,104 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:17,104 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-28 05:35:17,105 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:17,105 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:35:17,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:17,133 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:35:17,133 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:17,134 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:35:17,134 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:35:17,134 INFO L87 Difference]: Start difference. First operand 49 states and 65 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:35:17,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:17,766 INFO L93 Difference]: Finished difference Result 74 states and 105 transitions. [2022-04-28 05:35:17,767 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:35:17,767 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-28 05:35:17,767 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:17,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:35:17,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 65 transitions. [2022-04-28 05:35:17,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:35:17,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 65 transitions. [2022-04-28 05:35:17,770 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 65 transitions. [2022-04-28 05:35:17,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:17,830 INFO L225 Difference]: With dead ends: 74 [2022-04-28 05:35:17,830 INFO L226 Difference]: Without dead ends: 70 [2022-04-28 05:35:17,830 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:35:17,831 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 17 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 145 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 175 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 145 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:17,831 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 175 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 145 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:17,831 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-28 05:35:17,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-28 05:35:17,880 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:17,881 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:17,881 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:17,881 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:17,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:17,884 INFO L93 Difference]: Finished difference Result 70 states and 98 transitions. [2022-04-28 05:35:17,884 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-28 05:35:17,885 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:17,885 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:17,885 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 70 states. [2022-04-28 05:35:17,885 INFO L87 Difference]: Start difference. First operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 70 states. [2022-04-28 05:35:17,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:17,888 INFO L93 Difference]: Finished difference Result 70 states and 98 transitions. [2022-04-28 05:35:17,888 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-28 05:35:17,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:17,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:17,889 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:17,889 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:17,889 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:17,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 98 transitions. [2022-04-28 05:35:17,892 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 98 transitions. Word has length 43 [2022-04-28 05:35:17,892 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:17,892 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 98 transitions. [2022-04-28 05:35:17,892 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:35:17,892 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 98 transitions. [2022-04-28 05:35:17,994 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:17,994 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-28 05:35:17,994 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 05:35:17,994 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:17,995 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:18,013 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:18,199 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:18,199 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:18,200 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:18,200 INFO L85 PathProgramCache]: Analyzing trace with hash -301191846, now seen corresponding path program 1 times [2022-04-28 05:35:18,200 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:18,200 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [630187597] [2022-04-28 05:35:18,200 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:18,200 INFO L85 PathProgramCache]: Analyzing trace with hash -301191846, now seen corresponding path program 2 times [2022-04-28 05:35:18,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:18,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1783299508] [2022-04-28 05:35:18,201 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:18,201 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:18,217 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:18,217 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [18440671] [2022-04-28 05:35:18,217 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:35:18,218 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:18,218 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:18,218 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:18,220 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 05:35:18,255 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:35:18,255 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:18,256 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:35:18,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:18,266 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:18,362 INFO L272 TraceCheckUtils]: 0: Hoare triple {1720#true} call ULTIMATE.init(); {1720#true} is VALID [2022-04-28 05:35:18,362 INFO L290 TraceCheckUtils]: 1: Hoare triple {1720#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); {1720#true} is VALID [2022-04-28 05:35:18,362 INFO L290 TraceCheckUtils]: 2: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,362 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1720#true} {1720#true} #88#return; {1720#true} is VALID [2022-04-28 05:35:18,362 INFO L272 TraceCheckUtils]: 4: Hoare triple {1720#true} call #t~ret6 := main(); {1720#true} is VALID [2022-04-28 05:35:18,362 INFO L290 TraceCheckUtils]: 5: Hoare triple {1720#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; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L272 TraceCheckUtils]: 6: Hoare triple {1720#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 7: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 8: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 9: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1720#true} {1720#true} #66#return; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 11: Hoare triple {1720#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L272 TraceCheckUtils]: 12: Hoare triple {1720#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 14: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L290 TraceCheckUtils]: 15: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,363 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1720#true} {1720#true} #68#return; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L272 TraceCheckUtils]: 17: Hoare triple {1720#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 18: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 19: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 20: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1720#true} {1720#true} #70#return; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L272 TraceCheckUtils]: 22: Hoare triple {1720#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 23: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 24: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 25: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1720#true} {1720#true} #72#return; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 27: Hoare triple {1720#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1720#true} is VALID [2022-04-28 05:35:18,364 INFO L290 TraceCheckUtils]: 28: Hoare triple {1720#true} assume !false; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L272 TraceCheckUtils]: 29: Hoare triple {1720#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L290 TraceCheckUtils]: 30: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L290 TraceCheckUtils]: 31: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L290 TraceCheckUtils]: 32: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1720#true} {1720#true} #74#return; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L272 TraceCheckUtils]: 34: Hoare triple {1720#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L290 TraceCheckUtils]: 35: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L290 TraceCheckUtils]: 36: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L290 TraceCheckUtils]: 37: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1720#true} {1720#true} #76#return; {1720#true} is VALID [2022-04-28 05:35:18,365 INFO L272 TraceCheckUtils]: 39: Hoare triple {1720#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1720#true} is VALID [2022-04-28 05:35:18,366 INFO L290 TraceCheckUtils]: 40: Hoare triple {1720#true} ~cond := #in~cond; {1720#true} is VALID [2022-04-28 05:35:18,366 INFO L290 TraceCheckUtils]: 41: Hoare triple {1720#true} assume !(0 == ~cond); {1720#true} is VALID [2022-04-28 05:35:18,366 INFO L290 TraceCheckUtils]: 42: Hoare triple {1720#true} assume true; {1720#true} is VALID [2022-04-28 05:35:18,366 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1720#true} {1720#true} #78#return; {1720#true} is VALID [2022-04-28 05:35:18,367 INFO L290 TraceCheckUtils]: 44: Hoare triple {1720#true} assume !(~a~0 != ~b~0); {1857#(= main_~b~0 main_~a~0)} is VALID [2022-04-28 05:35:18,368 INFO L272 TraceCheckUtils]: 45: Hoare triple {1857#(= main_~b~0 main_~a~0)} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {1861#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:18,368 INFO L290 TraceCheckUtils]: 46: Hoare triple {1861#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1865#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:18,369 INFO L290 TraceCheckUtils]: 47: Hoare triple {1865#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1721#false} is VALID [2022-04-28 05:35:18,369 INFO L290 TraceCheckUtils]: 48: Hoare triple {1721#false} assume !false; {1721#false} is VALID [2022-04-28 05:35:18,369 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:35:18,369 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:35:18,369 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:18,369 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1783299508] [2022-04-28 05:35:18,369 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:18,369 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [18440671] [2022-04-28 05:35:18,369 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [18440671] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:18,369 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:18,369 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:35:18,370 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:18,370 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [630187597] [2022-04-28 05:35:18,370 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [630187597] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:18,370 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:18,370 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:35:18,370 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2065648071] [2022-04-28 05:35:18,370 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:18,370 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) Word has length 49 [2022-04-28 05:35:18,370 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:18,371 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-28 05:35:18,394 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:18,394 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:35:18,394 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:18,395 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:35:18,395 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:35:18,395 INFO L87 Difference]: Start difference. First operand 70 states and 98 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-28 05:35:18,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:18,578 INFO L93 Difference]: Finished difference Result 76 states and 103 transitions. [2022-04-28 05:35:18,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:35:18,578 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) Word has length 49 [2022-04-28 05:35:18,578 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:18,578 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-28 05:35:18,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-28 05:35:18,580 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-28 05:35:18,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-28 05:35:18,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-04-28 05:35:18,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:18,621 INFO L225 Difference]: With dead ends: 76 [2022-04-28 05:35:18,621 INFO L226 Difference]: Without dead ends: 74 [2022-04-28 05:35:18,621 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 45 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:35:18,622 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 5 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:18,622 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 139 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:35:18,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-28 05:35:18,698 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-28 05:35:18,698 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:18,698 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:18,699 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:18,700 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:18,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:18,704 INFO L93 Difference]: Finished difference Result 74 states and 101 transitions. [2022-04-28 05:35:18,704 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-28 05:35:18,705 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:18,705 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:18,706 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 74 states. [2022-04-28 05:35:18,706 INFO L87 Difference]: Start difference. First operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 74 states. [2022-04-28 05:35:18,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:18,709 INFO L93 Difference]: Finished difference Result 74 states and 101 transitions. [2022-04-28 05:35:18,709 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-28 05:35:18,711 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:18,711 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:18,711 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:18,711 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:18,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-28 05:35:18,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 101 transitions. [2022-04-28 05:35:18,714 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 101 transitions. Word has length 49 [2022-04-28 05:35:18,715 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:18,715 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 101 transitions. [2022-04-28 05:35:18,715 INFO L496 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-28 05:35:18,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 101 transitions. [2022-04-28 05:35:18,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:18,818 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-28 05:35:18,819 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-28 05:35:18,819 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:18,819 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:18,838 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:19,023 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:19,024 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:19,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:19,024 INFO L85 PathProgramCache]: Analyzing trace with hash -1164909737, now seen corresponding path program 1 times [2022-04-28 05:35:19,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:19,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [234474987] [2022-04-28 05:35:19,024 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:19,025 INFO L85 PathProgramCache]: Analyzing trace with hash -1164909737, now seen corresponding path program 2 times [2022-04-28 05:35:19,025 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:19,025 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2009433139] [2022-04-28 05:35:19,025 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:19,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:19,037 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:19,038 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [810740238] [2022-04-28 05:35:19,038 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:35:19,038 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:19,038 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:19,039 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:19,040 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 05:35:19,076 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:35:19,076 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:19,077 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:35:19,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:19,090 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:20,628 INFO L272 TraceCheckUtils]: 0: Hoare triple {2321#true} call ULTIMATE.init(); {2321#true} is VALID [2022-04-28 05:35:20,628 INFO L290 TraceCheckUtils]: 1: Hoare triple {2321#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); {2321#true} is VALID [2022-04-28 05:35:20,628 INFO L290 TraceCheckUtils]: 2: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2321#true} {2321#true} #88#return; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L272 TraceCheckUtils]: 4: Hoare triple {2321#true} call #t~ret6 := main(); {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 5: Hoare triple {2321#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; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L272 TraceCheckUtils]: 6: Hoare triple {2321#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 7: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 8: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 9: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2321#true} {2321#true} #66#return; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 11: Hoare triple {2321#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L272 TraceCheckUtils]: 12: Hoare triple {2321#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 13: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 14: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,629 INFO L290 TraceCheckUtils]: 15: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2321#true} {2321#true} #68#return; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L272 TraceCheckUtils]: 17: Hoare triple {2321#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L290 TraceCheckUtils]: 18: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L290 TraceCheckUtils]: 20: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2321#true} {2321#true} #70#return; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L272 TraceCheckUtils]: 22: Hoare triple {2321#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L290 TraceCheckUtils]: 23: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L290 TraceCheckUtils]: 24: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L290 TraceCheckUtils]: 25: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,630 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2321#true} {2321#true} #72#return; {2321#true} is VALID [2022-04-28 05:35:20,634 INFO L290 TraceCheckUtils]: 27: Hoare triple {2321#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,639 INFO L290 TraceCheckUtils]: 28: Hoare triple {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,639 INFO L272 TraceCheckUtils]: 29: Hoare triple {2407#(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)); {2321#true} is VALID [2022-04-28 05:35:20,639 INFO L290 TraceCheckUtils]: 30: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,639 INFO L290 TraceCheckUtils]: 31: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,639 INFO L290 TraceCheckUtils]: 32: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,640 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2321#true} {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #74#return; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,640 INFO L272 TraceCheckUtils]: 34: Hoare triple {2407#(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)); {2321#true} is VALID [2022-04-28 05:35:20,640 INFO L290 TraceCheckUtils]: 35: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,640 INFO L290 TraceCheckUtils]: 36: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,640 INFO L290 TraceCheckUtils]: 37: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,641 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2321#true} {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #76#return; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,641 INFO L272 TraceCheckUtils]: 39: Hoare triple {2407#(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)); {2321#true} is VALID [2022-04-28 05:35:20,641 INFO L290 TraceCheckUtils]: 40: Hoare triple {2321#true} ~cond := #in~cond; {2321#true} is VALID [2022-04-28 05:35:20,641 INFO L290 TraceCheckUtils]: 41: Hoare triple {2321#true} assume !(0 == ~cond); {2321#true} is VALID [2022-04-28 05:35:20,641 INFO L290 TraceCheckUtils]: 42: Hoare triple {2321#true} assume true; {2321#true} is VALID [2022-04-28 05:35:20,641 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2321#true} {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #78#return; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,642 INFO L290 TraceCheckUtils]: 44: Hoare triple {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,642 INFO L290 TraceCheckUtils]: 45: Hoare triple {2407#(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; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,642 INFO L290 TraceCheckUtils]: 46: Hoare triple {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {2407#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:20,643 INFO L272 TraceCheckUtils]: 47: Hoare triple {2407#(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)); {2468#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:20,643 INFO L290 TraceCheckUtils]: 48: Hoare triple {2468#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2472#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:20,644 INFO L290 TraceCheckUtils]: 49: Hoare triple {2472#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2322#false} is VALID [2022-04-28 05:35:20,644 INFO L290 TraceCheckUtils]: 50: Hoare triple {2322#false} assume !false; {2322#false} is VALID [2022-04-28 05:35:20,644 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-28 05:35:20,644 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:35:20,644 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:20,644 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2009433139] [2022-04-28 05:35:20,644 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:20,644 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [810740238] [2022-04-28 05:35:20,644 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [810740238] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:20,644 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:20,644 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:35:20,645 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:20,645 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [234474987] [2022-04-28 05:35:20,645 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [234474987] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:20,645 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:20,645 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:35:20,645 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [618460017] [2022-04-28 05:35:20,645 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:20,645 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-28 05:35:20,645 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:20,646 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:35:20,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:20,667 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:35:20,667 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:20,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:35:20,668 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:35:20,668 INFO L87 Difference]: Start difference. First operand 74 states and 101 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:35:20,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:20,886 INFO L93 Difference]: Finished difference Result 84 states and 109 transitions. [2022-04-28 05:35:20,886 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:35:20,886 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-28 05:35:20,887 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:20,887 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:35:20,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-28 05:35:20,888 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:35:20,889 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-28 05:35:20,889 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-28 05:35:20,935 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-28 05:35:20,936 INFO L225 Difference]: With dead ends: 84 [2022-04-28 05:35:20,936 INFO L226 Difference]: Without dead ends: 81 [2022-04-28 05:35:20,936 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 46 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-28 05:35:20,937 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 6 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 146 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:20,937 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 146 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:35:20,937 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-28 05:35:20,988 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 79. [2022-04-28 05:35:20,989 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:20,989 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 05:35:20,989 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 05:35:20,989 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 05:35:20,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:20,992 INFO L93 Difference]: Finished difference Result 81 states and 105 transitions. [2022-04-28 05:35:20,992 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 105 transitions. [2022-04-28 05:35:20,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:20,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:20,992 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 81 states. [2022-04-28 05:35:20,993 INFO L87 Difference]: Start difference. First operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 81 states. [2022-04-28 05:35:20,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:20,995 INFO L93 Difference]: Finished difference Result 81 states and 105 transitions. [2022-04-28 05:35:20,995 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 105 transitions. [2022-04-28 05:35:20,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:20,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:20,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:20,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:20,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 05:35:20,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 102 transitions. [2022-04-28 05:35:20,997 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 102 transitions. Word has length 51 [2022-04-28 05:35:20,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:20,998 INFO L495 AbstractCegarLoop]: Abstraction has 79 states and 102 transitions. [2022-04-28 05:35:20,998 INFO L496 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:35:20,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 79 states and 102 transitions. [2022-04-28 05:35:21,096 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:21,096 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 102 transitions. [2022-04-28 05:35:21,097 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-28 05:35:21,097 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:21,097 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:21,114 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:21,311 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:21,313 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:21,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:21,314 INFO L85 PathProgramCache]: Analyzing trace with hash 1924168317, now seen corresponding path program 1 times [2022-04-28 05:35:21,314 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:21,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1532204577] [2022-04-28 05:35:21,314 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:21,314 INFO L85 PathProgramCache]: Analyzing trace with hash 1924168317, now seen corresponding path program 2 times [2022-04-28 05:35:21,314 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:21,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1428573266] [2022-04-28 05:35:21,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:21,315 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:21,338 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:21,338 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1190921310] [2022-04-28 05:35:21,338 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:35:21,338 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:21,338 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:21,343 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:21,352 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 05:35:21,388 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:35:21,388 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:21,389 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 05:35:21,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:21,404 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:21,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {2968#true} call ULTIMATE.init(); {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {2968#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); {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L290 TraceCheckUtils]: 2: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2968#true} {2968#true} #88#return; {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L272 TraceCheckUtils]: 4: Hoare triple {2968#true} call #t~ret6 := main(); {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L290 TraceCheckUtils]: 5: Hoare triple {2968#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; {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L272 TraceCheckUtils]: 6: Hoare triple {2968#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L290 TraceCheckUtils]: 7: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,579 INFO L290 TraceCheckUtils]: 8: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2968#true} {2968#true} #66#return; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 11: Hoare triple {2968#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L272 TraceCheckUtils]: 12: Hoare triple {2968#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 14: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2968#true} {2968#true} #68#return; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L272 TraceCheckUtils]: 17: Hoare triple {2968#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 18: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 19: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L290 TraceCheckUtils]: 20: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2968#true} {2968#true} #70#return; {2968#true} is VALID [2022-04-28 05:35:21,580 INFO L272 TraceCheckUtils]: 22: Hoare triple {2968#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 23: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 24: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 25: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2968#true} {2968#true} #72#return; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 27: Hoare triple {2968#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 28: Hoare triple {2968#true} assume !false; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L272 TraceCheckUtils]: 29: Hoare triple {2968#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 30: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 31: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L290 TraceCheckUtils]: 32: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2968#true} {2968#true} #74#return; {2968#true} is VALID [2022-04-28 05:35:21,581 INFO L272 TraceCheckUtils]: 34: Hoare triple {2968#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:21,582 INFO L290 TraceCheckUtils]: 35: Hoare triple {2968#true} ~cond := #in~cond; {3078#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:21,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {3078#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:35:21,582 INFO L290 TraceCheckUtils]: 37: Hoare triple {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:35:21,583 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} {2968#true} #76#return; {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:21,583 INFO L272 TraceCheckUtils]: 39: Hoare triple {3089#(= 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)); {2968#true} is VALID [2022-04-28 05:35:21,583 INFO L290 TraceCheckUtils]: 40: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,583 INFO L290 TraceCheckUtils]: 41: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,583 INFO L290 TraceCheckUtils]: 42: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,584 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2968#true} {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #78#return; {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:21,584 INFO L290 TraceCheckUtils]: 44: Hoare triple {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {3108#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:21,584 INFO L272 TraceCheckUtils]: 45: Hoare triple {3108#(= 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)); {2968#true} is VALID [2022-04-28 05:35:21,584 INFO L290 TraceCheckUtils]: 46: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:21,584 INFO L290 TraceCheckUtils]: 47: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:21,584 INFO L290 TraceCheckUtils]: 48: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:21,585 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2968#true} {3108#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #80#return; {3108#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:21,586 INFO L272 TraceCheckUtils]: 50: Hoare triple {3108#(= 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)); {3127#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:21,586 INFO L290 TraceCheckUtils]: 51: Hoare triple {3127#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3131#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:21,586 INFO L290 TraceCheckUtils]: 52: Hoare triple {3131#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2969#false} is VALID [2022-04-28 05:35:21,586 INFO L290 TraceCheckUtils]: 53: Hoare triple {2969#false} assume !false; {2969#false} is VALID [2022-04-28 05:35:21,587 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 05:35:21,587 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:40,651 INFO L290 TraceCheckUtils]: 53: Hoare triple {2969#false} assume !false; {2969#false} is VALID [2022-04-28 05:35:40,652 INFO L290 TraceCheckUtils]: 52: Hoare triple {3131#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2969#false} is VALID [2022-04-28 05:35:40,652 INFO L290 TraceCheckUtils]: 51: Hoare triple {3127#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3131#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:40,653 INFO L272 TraceCheckUtils]: 50: Hoare triple {3108#(= 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)); {3127#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:40,653 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2968#true} {3108#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #80#return; {3108#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:40,653 INFO L290 TraceCheckUtils]: 48: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,653 INFO L290 TraceCheckUtils]: 47: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,654 INFO L290 TraceCheckUtils]: 46: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,654 INFO L272 TraceCheckUtils]: 45: Hoare triple {3108#(= 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)); {2968#true} is VALID [2022-04-28 05:35:40,654 INFO L290 TraceCheckUtils]: 44: Hoare triple {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {3108#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:40,655 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2968#true} {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #78#return; {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:40,655 INFO L290 TraceCheckUtils]: 42: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,655 INFO L290 TraceCheckUtils]: 41: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,655 INFO L290 TraceCheckUtils]: 40: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,655 INFO L272 TraceCheckUtils]: 39: Hoare triple {3089#(= 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)); {2968#true} is VALID [2022-04-28 05:35:40,656 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} {2968#true} #76#return; {3089#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:40,657 INFO L290 TraceCheckUtils]: 37: Hoare triple {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:35:40,657 INFO L290 TraceCheckUtils]: 36: Hoare triple {3192#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3082#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:35:40,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {2968#true} ~cond := #in~cond; {3192#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:35:40,657 INFO L272 TraceCheckUtils]: 34: Hoare triple {2968#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:40,657 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2968#true} {2968#true} #74#return; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 32: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 31: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 30: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L272 TraceCheckUtils]: 29: Hoare triple {2968#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 28: Hoare triple {2968#true} assume !false; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 27: Hoare triple {2968#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2968#true} {2968#true} #72#return; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 25: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 24: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 23: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L272 TraceCheckUtils]: 22: Hoare triple {2968#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2968#true} {2968#true} #70#return; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,658 INFO L290 TraceCheckUtils]: 19: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 18: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L272 TraceCheckUtils]: 17: Hoare triple {2968#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2968#true} {2968#true} #68#return; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 15: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 14: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L272 TraceCheckUtils]: 12: Hoare triple {2968#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 11: Hoare triple {2968#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2968#true} {2968#true} #66#return; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {2968#true} assume !(0 == ~cond); {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {2968#true} ~cond := #in~cond; {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L272 TraceCheckUtils]: 6: Hoare triple {2968#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2968#true} is VALID [2022-04-28 05:35:40,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {2968#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; {2968#true} is VALID [2022-04-28 05:35:40,660 INFO L272 TraceCheckUtils]: 4: Hoare triple {2968#true} call #t~ret6 := main(); {2968#true} is VALID [2022-04-28 05:35:40,660 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2968#true} {2968#true} #88#return; {2968#true} is VALID [2022-04-28 05:35:40,660 INFO L290 TraceCheckUtils]: 2: Hoare triple {2968#true} assume true; {2968#true} is VALID [2022-04-28 05:35:40,660 INFO L290 TraceCheckUtils]: 1: Hoare triple {2968#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); {2968#true} is VALID [2022-04-28 05:35:40,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {2968#true} call ULTIMATE.init(); {2968#true} is VALID [2022-04-28 05:35:40,660 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 05:35:40,660 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:40,660 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1428573266] [2022-04-28 05:35:40,660 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:40,660 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1190921310] [2022-04-28 05:35:40,660 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1190921310] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:40,660 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:40,661 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:35:40,661 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:40,661 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1532204577] [2022-04-28 05:35:40,661 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1532204577] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:40,661 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:40,661 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:40,661 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [644647560] [2022-04-28 05:35:40,661 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:40,661 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 54 [2022-04-28 05:35:40,661 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:40,662 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:35:40,693 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-28 05:35:40,694 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:35:40,694 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:40,694 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:35:40,694 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:35:40,695 INFO L87 Difference]: Start difference. First operand 79 states and 102 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:35:41,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:41,154 INFO L93 Difference]: Finished difference Result 88 states and 112 transitions. [2022-04-28 05:35:41,154 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:35:41,154 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 54 [2022-04-28 05:35:41,154 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:41,154 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:35:41,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 52 transitions. [2022-04-28 05:35:41,155 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:35:41,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 52 transitions. [2022-04-28 05:35:41,156 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 52 transitions. [2022-04-28 05:35:41,199 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:41,201 INFO L225 Difference]: With dead ends: 88 [2022-04-28 05:35:41,201 INFO L226 Difference]: Without dead ends: 84 [2022-04-28 05:35:41,201 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 99 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:35:41,202 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 14 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:41,202 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15 Valid, 129 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:35:41,202 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2022-04-28 05:35:41,271 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 84. [2022-04-28 05:35:41,271 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:41,272 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:35:41,272 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:35:41,272 INFO L87 Difference]: Start difference. First operand 84 states. Second operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:35:41,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:41,274 INFO L93 Difference]: Finished difference Result 84 states and 105 transitions. [2022-04-28 05:35:41,274 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-04-28 05:35:41,275 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:41,275 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:41,275 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 84 states. [2022-04-28 05:35:41,275 INFO L87 Difference]: Start difference. First operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 84 states. [2022-04-28 05:35:41,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:41,278 INFO L93 Difference]: Finished difference Result 84 states and 105 transitions. [2022-04-28 05:35:41,278 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-04-28 05:35:41,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:41,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:41,278 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:41,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:41,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:35:41,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 105 transitions. [2022-04-28 05:35:41,280 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 105 transitions. Word has length 54 [2022-04-28 05:35:41,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:41,281 INFO L495 AbstractCegarLoop]: Abstraction has 84 states and 105 transitions. [2022-04-28 05:35:41,281 INFO L496 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, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 05:35:41,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 84 states and 105 transitions. [2022-04-28 05:35:41,388 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:41,388 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-04-28 05:35:41,389 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-28 05:35:41,389 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:41,389 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:41,408 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:41,589 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:41,590 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:41,591 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:41,591 INFO L85 PathProgramCache]: Analyzing trace with hash 1698149216, now seen corresponding path program 3 times [2022-04-28 05:35:41,591 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:41,591 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1010039696] [2022-04-28 05:35:41,591 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:41,592 INFO L85 PathProgramCache]: Analyzing trace with hash 1698149216, now seen corresponding path program 4 times [2022-04-28 05:35:41,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:41,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1793561529] [2022-04-28 05:35:41,592 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:41,592 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:41,606 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:41,607 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [584888660] [2022-04-28 05:35:41,607 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:35:41,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:41,608 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:41,609 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:41,611 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 05:35:41,644 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:35:41,644 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:41,654 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-28 05:35:41,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:41,668 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:42,275 INFO L272 TraceCheckUtils]: 0: Hoare triple {3818#true} call ULTIMATE.init(); {3818#true} is VALID [2022-04-28 05:35:42,275 INFO L290 TraceCheckUtils]: 1: Hoare triple {3818#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); {3818#true} is VALID [2022-04-28 05:35:42,275 INFO L290 TraceCheckUtils]: 2: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,275 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3818#true} {3818#true} #88#return; {3818#true} is VALID [2022-04-28 05:35:42,276 INFO L272 TraceCheckUtils]: 4: Hoare triple {3818#true} call #t~ret6 := main(); {3818#true} is VALID [2022-04-28 05:35:42,276 INFO L290 TraceCheckUtils]: 5: Hoare triple {3818#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; {3818#true} is VALID [2022-04-28 05:35:42,276 INFO L272 TraceCheckUtils]: 6: Hoare triple {3818#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {3818#true} ~cond := #in~cond; {3844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:42,280 INFO L290 TraceCheckUtils]: 8: Hoare triple {3844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:42,280 INFO L290 TraceCheckUtils]: 9: Hoare triple {3848#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:42,281 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3848#(not (= |assume_abort_if_not_#in~cond| 0))} {3818#true} #66#return; {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:42,281 INFO L290 TraceCheckUtils]: 11: Hoare triple {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:42,281 INFO L272 TraceCheckUtils]: 12: Hoare triple {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,281 INFO L290 TraceCheckUtils]: 13: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,281 INFO L290 TraceCheckUtils]: 14: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,281 INFO L290 TraceCheckUtils]: 15: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,282 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3818#true} {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #68#return; {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:42,282 INFO L272 TraceCheckUtils]: 17: Hoare triple {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,282 INFO L290 TraceCheckUtils]: 18: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,282 INFO L290 TraceCheckUtils]: 19: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,282 INFO L290 TraceCheckUtils]: 20: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,282 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3818#true} {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #70#return; {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:42,282 INFO L272 TraceCheckUtils]: 22: Hoare triple {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,283 INFO L290 TraceCheckUtils]: 23: Hoare triple {3818#true} ~cond := #in~cond; {3844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:42,283 INFO L290 TraceCheckUtils]: 24: Hoare triple {3844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:42,283 INFO L290 TraceCheckUtils]: 25: Hoare triple {3848#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:42,284 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3848#(not (= |assume_abort_if_not_#in~cond| 0))} {3855#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #72#return; {3904#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:42,284 INFO L290 TraceCheckUtils]: 27: Hoare triple {3904#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,285 INFO L290 TraceCheckUtils]: 28: Hoare triple {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,285 INFO L272 TraceCheckUtils]: 29: Hoare triple {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,285 INFO L290 TraceCheckUtils]: 30: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,285 INFO L290 TraceCheckUtils]: 32: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,285 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3818#true} {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} #74#return; {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,286 INFO L272 TraceCheckUtils]: 34: Hoare triple {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,286 INFO L290 TraceCheckUtils]: 35: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,286 INFO L290 TraceCheckUtils]: 36: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,286 INFO L290 TraceCheckUtils]: 37: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,286 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3818#true} {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} #76#return; {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,286 INFO L272 TraceCheckUtils]: 39: Hoare triple {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,286 INFO L290 TraceCheckUtils]: 40: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,287 INFO L290 TraceCheckUtils]: 41: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,287 INFO L290 TraceCheckUtils]: 42: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,287 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3818#true} {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} #78#return; {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,288 INFO L290 TraceCheckUtils]: 44: Hoare triple {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,288 INFO L290 TraceCheckUtils]: 45: Hoare triple {3908#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= 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; {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,289 INFO L290 TraceCheckUtils]: 46: Hoare triple {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,289 INFO L272 TraceCheckUtils]: 47: Hoare triple {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:42,289 INFO L290 TraceCheckUtils]: 48: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,289 INFO L290 TraceCheckUtils]: 49: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,289 INFO L290 TraceCheckUtils]: 50: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,289 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3818#true} {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} #74#return; {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 05:35:42,290 INFO L272 TraceCheckUtils]: 52: Hoare triple {3963#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) (< 0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3985#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:42,290 INFO L290 TraceCheckUtils]: 53: Hoare triple {3985#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3989#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:42,291 INFO L290 TraceCheckUtils]: 54: Hoare triple {3989#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3819#false} is VALID [2022-04-28 05:35:42,291 INFO L290 TraceCheckUtils]: 55: Hoare triple {3819#false} assume !false; {3819#false} is VALID [2022-04-28 05:35:42,291 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 14 proven. 9 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:35:42,291 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:42,665 INFO L290 TraceCheckUtils]: 55: Hoare triple {3819#false} assume !false; {3819#false} is VALID [2022-04-28 05:35:42,666 INFO L290 TraceCheckUtils]: 54: Hoare triple {3989#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3819#false} is VALID [2022-04-28 05:35:42,666 INFO L290 TraceCheckUtils]: 53: Hoare triple {3985#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3989#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:42,667 INFO L272 TraceCheckUtils]: 52: Hoare triple {4005#(= 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)); {3985#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:42,668 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3818#true} {4005#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4005#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:42,668 INFO L290 TraceCheckUtils]: 50: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:42,668 INFO L290 TraceCheckUtils]: 49: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:42,668 INFO L290 TraceCheckUtils]: 48: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:42,668 INFO L272 TraceCheckUtils]: 47: Hoare triple {4005#(= 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)); {3818#true} is VALID [2022-04-28 05:35:42,668 INFO L290 TraceCheckUtils]: 46: Hoare triple {4005#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {4005#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:35:44,670 WARN L290 TraceCheckUtils]: 45: Hoare triple {4027#(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_~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; {4005#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is UNKNOWN [2022-04-28 05:35:44,670 INFO L290 TraceCheckUtils]: 44: Hoare triple {4027#(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_~a~0)))} assume !!(~a~0 != ~b~0); {4027#(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_~a~0)))} is VALID [2022-04-28 05:35:44,671 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3818#true} {4027#(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_~a~0)))} #78#return; {4027#(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_~a~0)))} is VALID [2022-04-28 05:35:44,671 INFO L290 TraceCheckUtils]: 42: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,671 INFO L290 TraceCheckUtils]: 41: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,671 INFO L290 TraceCheckUtils]: 40: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,671 INFO L272 TraceCheckUtils]: 39: Hoare triple {4027#(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_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,672 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3818#true} {4027#(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_~a~0)))} #76#return; {4027#(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_~a~0)))} is VALID [2022-04-28 05:35:44,672 INFO L290 TraceCheckUtils]: 37: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,672 INFO L290 TraceCheckUtils]: 36: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,672 INFO L290 TraceCheckUtils]: 35: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,672 INFO L272 TraceCheckUtils]: 34: Hoare triple {4027#(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_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,673 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3818#true} {4027#(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_~a~0)))} #74#return; {4027#(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_~a~0)))} is VALID [2022-04-28 05:35:44,673 INFO L290 TraceCheckUtils]: 32: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,673 INFO L290 TraceCheckUtils]: 31: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,673 INFO L290 TraceCheckUtils]: 30: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,673 INFO L272 TraceCheckUtils]: 29: Hoare triple {4027#(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_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L290 TraceCheckUtils]: 28: Hoare triple {4027#(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_~a~0)))} assume !false; {4027#(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_~a~0)))} is VALID [2022-04-28 05:35:44,674 INFO L290 TraceCheckUtils]: 27: Hoare triple {3818#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4027#(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_~a~0)))} is VALID [2022-04-28 05:35:44,674 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3818#true} {3818#true} #72#return; {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L290 TraceCheckUtils]: 25: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L290 TraceCheckUtils]: 24: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L290 TraceCheckUtils]: 23: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L272 TraceCheckUtils]: 22: Hoare triple {3818#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3818#true} {3818#true} #70#return; {3818#true} is VALID [2022-04-28 05:35:44,674 INFO L290 TraceCheckUtils]: 20: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,675 INFO L290 TraceCheckUtils]: 19: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,675 INFO L290 TraceCheckUtils]: 18: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,675 INFO L272 TraceCheckUtils]: 17: Hoare triple {3818#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,675 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3818#true} {3818#true} #68#return; {3818#true} is VALID [2022-04-28 05:35:44,675 INFO L290 TraceCheckUtils]: 15: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L272 TraceCheckUtils]: 12: Hoare triple {3818#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {3818#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3818#true} {3818#true} #66#return; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 9: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {3818#true} assume !(0 == ~cond); {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 7: Hoare triple {3818#true} ~cond := #in~cond; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L272 TraceCheckUtils]: 6: Hoare triple {3818#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {3818#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; {3818#true} is VALID [2022-04-28 05:35:44,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {3818#true} call #t~ret6 := main(); {3818#true} is VALID [2022-04-28 05:35:44,684 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3818#true} {3818#true} #88#return; {3818#true} is VALID [2022-04-28 05:35:44,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {3818#true} assume true; {3818#true} is VALID [2022-04-28 05:35:44,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {3818#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); {3818#true} is VALID [2022-04-28 05:35:44,684 INFO L272 TraceCheckUtils]: 0: Hoare triple {3818#true} call ULTIMATE.init(); {3818#true} is VALID [2022-04-28 05:35:44,684 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 05:35:44,684 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:44,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1793561529] [2022-04-28 05:35:44,684 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:44,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [584888660] [2022-04-28 05:35:44,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [584888660] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:44,684 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:44,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 6] total 12 [2022-04-28 05:35:44,685 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:44,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1010039696] [2022-04-28 05:35:44,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1010039696] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:44,685 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:44,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:35:44,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1223973928] [2022-04-28 05:35:44,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:44,685 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) Word has length 56 [2022-04-28 05:35:44,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:44,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:35:44,719 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:44,719 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:35:44,719 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:44,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:35:44,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:35:44,720 INFO L87 Difference]: Start difference. First operand 84 states and 105 transitions. Second operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:35:45,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:45,897 INFO L93 Difference]: Finished difference Result 118 states and 147 transitions. [2022-04-28 05:35:45,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:35:45,897 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) Word has length 56 [2022-04-28 05:35:45,898 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:45,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:35:45,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 75 transitions. [2022-04-28 05:35:45,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:35:45,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 75 transitions. [2022-04-28 05:35:45,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 75 transitions. [2022-04-28 05:35:45,965 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-28 05:35:45,967 INFO L225 Difference]: With dead ends: 118 [2022-04-28 05:35:45,967 INFO L226 Difference]: Without dead ends: 116 [2022-04-28 05:35:45,968 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 113 GetRequests, 100 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:35:45,968 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 21 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 228 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 184 SdHoareTripleChecker+Invalid, 243 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 228 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:45,968 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 184 Invalid, 243 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 228 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:35:45,969 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-04-28 05:35:46,096 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 112. [2022-04-28 05:35:46,096 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:46,096 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 112 states, 64 states have (on average 1.15625) internal successors, (74), 67 states have internal predecessors, (74), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:35:46,096 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 112 states, 64 states have (on average 1.15625) internal successors, (74), 67 states have internal predecessors, (74), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:35:46,097 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 112 states, 64 states have (on average 1.15625) internal successors, (74), 67 states have internal predecessors, (74), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:35:46,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:46,100 INFO L93 Difference]: Finished difference Result 116 states and 145 transitions. [2022-04-28 05:35:46,100 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 145 transitions. [2022-04-28 05:35:46,100 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:46,100 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:46,100 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 64 states have (on average 1.15625) internal successors, (74), 67 states have internal predecessors, (74), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) Second operand 116 states. [2022-04-28 05:35:46,101 INFO L87 Difference]: Start difference. First operand has 112 states, 64 states have (on average 1.15625) internal successors, (74), 67 states have internal predecessors, (74), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) Second operand 116 states. [2022-04-28 05:35:46,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:46,104 INFO L93 Difference]: Finished difference Result 116 states and 145 transitions. [2022-04-28 05:35:46,104 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 145 transitions. [2022-04-28 05:35:46,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:46,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:46,104 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:46,104 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:46,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 64 states have (on average 1.15625) internal successors, (74), 67 states have internal predecessors, (74), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:35:46,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 138 transitions. [2022-04-28 05:35:46,108 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 138 transitions. Word has length 56 [2022-04-28 05:35:46,108 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:46,108 INFO L495 AbstractCegarLoop]: Abstraction has 112 states and 138 transitions. [2022-04-28 05:35:46,108 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:35:46,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 138 transitions. [2022-04-28 05:35:46,256 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:46,256 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 138 transitions. [2022-04-28 05:35:46,256 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-28 05:35:46,256 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:46,257 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:46,273 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-28 05:35:46,459 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:46,461 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:46,462 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:46,462 INFO L85 PathProgramCache]: Analyzing trace with hash 888099957, now seen corresponding path program 1 times [2022-04-28 05:35:46,462 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:46,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [849157341] [2022-04-28 05:35:46,462 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:46,462 INFO L85 PathProgramCache]: Analyzing trace with hash 888099957, now seen corresponding path program 2 times [2022-04-28 05:35:46,462 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:46,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [353678514] [2022-04-28 05:35:46,462 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:46,462 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:46,475 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:46,475 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1854608389] [2022-04-28 05:35:46,475 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:35:46,475 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:46,475 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:46,476 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:46,477 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 05:35:46,517 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:35:46,517 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:46,518 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:35:46,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:46,526 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:46,826 INFO L272 TraceCheckUtils]: 0: Hoare triple {4861#true} call ULTIMATE.init(); {4861#true} is VALID [2022-04-28 05:35:46,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {4861#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); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4861#true} {4861#true} #88#return; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {4861#true} call #t~ret6 := main(); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {4861#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; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {4861#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4861#true} {4861#true} #66#return; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {4861#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L272 TraceCheckUtils]: 12: Hoare triple {4861#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 13: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 14: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 15: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4861#true} {4861#true} #68#return; {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L272 TraceCheckUtils]: 17: Hoare triple {4861#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:46,827 INFO L290 TraceCheckUtils]: 18: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L290 TraceCheckUtils]: 20: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4861#true} {4861#true} #70#return; {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L272 TraceCheckUtils]: 22: Hoare triple {4861#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L290 TraceCheckUtils]: 23: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L290 TraceCheckUtils]: 24: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L290 TraceCheckUtils]: 25: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,828 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4861#true} {4861#true} #72#return; {4861#true} is VALID [2022-04-28 05:35:46,829 INFO L290 TraceCheckUtils]: 27: Hoare triple {4861#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:46,830 INFO L290 TraceCheckUtils]: 28: Hoare triple {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:46,830 INFO L272 TraceCheckUtils]: 29: Hoare triple {4947#(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)); {4861#true} is VALID [2022-04-28 05:35:46,830 INFO L290 TraceCheckUtils]: 30: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,830 INFO L290 TraceCheckUtils]: 32: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,831 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4861#true} {4947#(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))} #74#return; {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:46,831 INFO L272 TraceCheckUtils]: 34: Hoare triple {4947#(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)); {4861#true} is VALID [2022-04-28 05:35:46,831 INFO L290 TraceCheckUtils]: 35: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,831 INFO L290 TraceCheckUtils]: 36: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,831 INFO L290 TraceCheckUtils]: 37: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,831 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4861#true} {4947#(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))} #76#return; {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:46,832 INFO L272 TraceCheckUtils]: 39: Hoare triple {4947#(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)); {4861#true} is VALID [2022-04-28 05:35:46,832 INFO L290 TraceCheckUtils]: 40: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,832 INFO L290 TraceCheckUtils]: 41: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,832 INFO L290 TraceCheckUtils]: 42: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,832 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4861#true} {4947#(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))} #78#return; {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:46,833 INFO L290 TraceCheckUtils]: 44: Hoare triple {4947#(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); {4947#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:35:46,833 INFO L290 TraceCheckUtils]: 45: Hoare triple {4947#(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; {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:35:46,833 INFO L290 TraceCheckUtils]: 46: Hoare triple {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} assume !false; {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:35:46,834 INFO L272 TraceCheckUtils]: 47: Hoare triple {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:46,834 INFO L290 TraceCheckUtils]: 48: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,834 INFO L290 TraceCheckUtils]: 49: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,834 INFO L290 TraceCheckUtils]: 50: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,834 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4861#true} {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} #74#return; {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:35:46,834 INFO L272 TraceCheckUtils]: 52: Hoare triple {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:46,834 INFO L290 TraceCheckUtils]: 53: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:46,834 INFO L290 TraceCheckUtils]: 54: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:46,835 INFO L290 TraceCheckUtils]: 55: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:46,836 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {4861#true} {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} #76#return; {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:35:46,837 INFO L272 TraceCheckUtils]: 57: Hoare triple {5002#(and (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5039#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:46,837 INFO L290 TraceCheckUtils]: 58: Hoare triple {5039#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5043#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:46,837 INFO L290 TraceCheckUtils]: 59: Hoare triple {5043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4862#false} is VALID [2022-04-28 05:35:46,837 INFO L290 TraceCheckUtils]: 60: Hoare triple {4862#false} assume !false; {4862#false} is VALID [2022-04-28 05:35:46,838 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 10 proven. 4 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-28 05:35:46,838 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:47,042 INFO L290 TraceCheckUtils]: 60: Hoare triple {4862#false} assume !false; {4862#false} is VALID [2022-04-28 05:35:47,043 INFO L290 TraceCheckUtils]: 59: Hoare triple {5043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4862#false} is VALID [2022-04-28 05:35:47,043 INFO L290 TraceCheckUtils]: 58: Hoare triple {5039#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5043#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:35:47,044 INFO L272 TraceCheckUtils]: 57: Hoare triple {5059#(= 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)); {5039#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:35:47,044 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {4861#true} {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #76#return; {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:35:47,045 INFO L290 TraceCheckUtils]: 55: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L290 TraceCheckUtils]: 54: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L290 TraceCheckUtils]: 53: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L272 TraceCheckUtils]: 52: Hoare triple {5059#(= 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)); {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4861#true} {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #74#return; {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:35:47,045 INFO L290 TraceCheckUtils]: 50: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L290 TraceCheckUtils]: 49: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L290 TraceCheckUtils]: 48: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,045 INFO L272 TraceCheckUtils]: 47: Hoare triple {5059#(= 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)); {4861#true} is VALID [2022-04-28 05:35:47,046 INFO L290 TraceCheckUtils]: 46: Hoare triple {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:35:47,169 INFO L290 TraceCheckUtils]: 45: Hoare triple {5096#(= (+ (* (+ 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; {5059#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:35:47,169 INFO L290 TraceCheckUtils]: 44: Hoare triple {5096#(= (+ (* (+ 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); {5096#(= (+ (* (+ 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-28 05:35:47,170 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4861#true} {5096#(= (+ (* (+ 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))} #78#return; {5096#(= (+ (* (+ 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-28 05:35:47,170 INFO L290 TraceCheckUtils]: 42: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,170 INFO L290 TraceCheckUtils]: 41: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,170 INFO L290 TraceCheckUtils]: 40: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,170 INFO L272 TraceCheckUtils]: 39: Hoare triple {5096#(= (+ (* (+ 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)); {4861#true} is VALID [2022-04-28 05:35:47,171 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4861#true} {5096#(= (+ (* (+ 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))} #76#return; {5096#(= (+ (* (+ 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-28 05:35:47,171 INFO L290 TraceCheckUtils]: 37: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,171 INFO L290 TraceCheckUtils]: 36: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,171 INFO L290 TraceCheckUtils]: 35: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,171 INFO L272 TraceCheckUtils]: 34: Hoare triple {5096#(= (+ (* (+ 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)); {4861#true} is VALID [2022-04-28 05:35:47,171 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4861#true} {5096#(= (+ (* (+ 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))} #74#return; {5096#(= (+ (* (+ 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-28 05:35:47,172 INFO L290 TraceCheckUtils]: 32: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,172 INFO L290 TraceCheckUtils]: 31: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,172 INFO L290 TraceCheckUtils]: 30: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,172 INFO L272 TraceCheckUtils]: 29: Hoare triple {5096#(= (+ (* (+ 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)); {4861#true} is VALID [2022-04-28 05:35:47,172 INFO L290 TraceCheckUtils]: 28: Hoare triple {5096#(= (+ (* (+ 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 !false; {5096#(= (+ (* (+ 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-28 05:35:47,172 INFO L290 TraceCheckUtils]: 27: Hoare triple {4861#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5096#(= (+ (* (+ 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-28 05:35:47,173 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4861#true} {4861#true} #72#return; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 24: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 23: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L272 TraceCheckUtils]: 22: Hoare triple {4861#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4861#true} {4861#true} #70#return; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 20: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 19: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 18: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L272 TraceCheckUtils]: 17: Hoare triple {4861#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4861#true} {4861#true} #68#return; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 15: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 14: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L290 TraceCheckUtils]: 13: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,173 INFO L272 TraceCheckUtils]: 12: Hoare triple {4861#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 11: Hoare triple {4861#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4861#true} {4861#true} #66#return; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 8: Hoare triple {4861#true} assume !(0 == ~cond); {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 7: Hoare triple {4861#true} ~cond := #in~cond; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L272 TraceCheckUtils]: 6: Hoare triple {4861#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 5: Hoare triple {4861#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; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L272 TraceCheckUtils]: 4: Hoare triple {4861#true} call #t~ret6 := main(); {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4861#true} {4861#true} #88#return; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {4861#true} assume true; {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {4861#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); {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L272 TraceCheckUtils]: 0: Hoare triple {4861#true} call ULTIMATE.init(); {4861#true} is VALID [2022-04-28 05:35:47,174 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 10 proven. 4 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-28 05:35:47,174 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:47,175 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [353678514] [2022-04-28 05:35:47,175 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:47,175 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1854608389] [2022-04-28 05:35:47,175 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1854608389] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:47,175 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:47,175 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2022-04-28 05:35:47,175 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:47,175 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [849157341] [2022-04-28 05:35:47,175 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [849157341] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:47,175 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:47,175 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:35:47,175 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [862848726] [2022-04-28 05:35:47,175 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:47,176 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 61 [2022-04-28 05:35:47,176 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:47,176 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-28 05:35:47,208 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:47,209 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:35:47,209 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:47,209 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:35:47,209 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:35:47,209 INFO L87 Difference]: Start difference. First operand 112 states and 138 transitions. Second operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-28 05:35:47,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:47,740 INFO L93 Difference]: Finished difference Result 137 states and 178 transitions. [2022-04-28 05:35:47,740 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:35:47,740 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 61 [2022-04-28 05:35:47,740 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:47,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-28 05:35:47,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:35:47,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-28 05:35:47,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:35:47,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-28 05:35:47,823 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-28 05:35:47,825 INFO L225 Difference]: With dead ends: 137 [2022-04-28 05:35:47,825 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 05:35:47,826 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:35:47,826 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 8 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 120 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:47,826 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 160 Invalid, 120 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:47,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 05:35:47,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 131. [2022-04-28 05:35:47,984 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:47,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 131 states, 73 states have (on average 1.178082191780822) internal successors, (86), 77 states have internal predecessors, (86), 42 states have call successors, (42), 16 states have call predecessors, (42), 15 states have return successors, (39), 37 states have call predecessors, (39), 39 states have call successors, (39) [2022-04-28 05:35:47,985 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 131 states, 73 states have (on average 1.178082191780822) internal successors, (86), 77 states have internal predecessors, (86), 42 states have call successors, (42), 16 states have call predecessors, (42), 15 states have return successors, (39), 37 states have call predecessors, (39), 39 states have call successors, (39) [2022-04-28 05:35:47,985 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 131 states, 73 states have (on average 1.178082191780822) internal successors, (86), 77 states have internal predecessors, (86), 42 states have call successors, (42), 16 states have call predecessors, (42), 15 states have return successors, (39), 37 states have call predecessors, (39), 39 states have call successors, (39) [2022-04-28 05:35:47,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:47,988 INFO L93 Difference]: Finished difference Result 131 states and 167 transitions. [2022-04-28 05:35:47,989 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 167 transitions. [2022-04-28 05:35:47,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:47,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:47,989 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 73 states have (on average 1.178082191780822) internal successors, (86), 77 states have internal predecessors, (86), 42 states have call successors, (42), 16 states have call predecessors, (42), 15 states have return successors, (39), 37 states have call predecessors, (39), 39 states have call successors, (39) Second operand 131 states. [2022-04-28 05:35:47,990 INFO L87 Difference]: Start difference. First operand has 131 states, 73 states have (on average 1.178082191780822) internal successors, (86), 77 states have internal predecessors, (86), 42 states have call successors, (42), 16 states have call predecessors, (42), 15 states have return successors, (39), 37 states have call predecessors, (39), 39 states have call successors, (39) Second operand 131 states. [2022-04-28 05:35:47,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:47,992 INFO L93 Difference]: Finished difference Result 131 states and 167 transitions. [2022-04-28 05:35:47,992 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 167 transitions. [2022-04-28 05:35:47,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:47,993 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:47,993 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:47,993 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:47,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 73 states have (on average 1.178082191780822) internal successors, (86), 77 states have internal predecessors, (86), 42 states have call successors, (42), 16 states have call predecessors, (42), 15 states have return successors, (39), 37 states have call predecessors, (39), 39 states have call successors, (39) [2022-04-28 05:35:47,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 167 transitions. [2022-04-28 05:35:47,997 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 167 transitions. Word has length 61 [2022-04-28 05:35:47,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:47,998 INFO L495 AbstractCegarLoop]: Abstraction has 131 states and 167 transitions. [2022-04-28 05:35:47,998 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-28 05:35:47,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 167 transitions. [2022-04-28 05:35:48,177 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 167 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:48,178 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 167 transitions. [2022-04-28 05:35:48,178 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:35:48,178 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:48,178 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:48,196 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:48,379 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 05:35:48,381 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:48,381 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:48,381 INFO L85 PathProgramCache]: Analyzing trace with hash 2064127436, now seen corresponding path program 1 times [2022-04-28 05:35:48,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:48,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1199368403] [2022-04-28 05:35:48,382 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:48,382 INFO L85 PathProgramCache]: Analyzing trace with hash 2064127436, now seen corresponding path program 2 times [2022-04-28 05:35:48,382 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:48,382 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1294194459] [2022-04-28 05:35:48,382 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:48,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:48,398 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:48,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1822449005] [2022-04-28 05:35:48,398 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:35:48,399 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:48,399 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:48,399 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:48,400 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 05:35:48,439 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:35:48,440 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:48,440 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 05:35:48,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:48,452 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:48,900 INFO L272 TraceCheckUtils]: 0: Hoare triple {6034#true} call ULTIMATE.init(); {6034#true} is VALID [2022-04-28 05:35:48,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {6034#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); {6034#true} is VALID [2022-04-28 05:35:48,901 INFO L290 TraceCheckUtils]: 2: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,901 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6034#true} {6034#true} #88#return; {6034#true} is VALID [2022-04-28 05:35:48,901 INFO L272 TraceCheckUtils]: 4: Hoare triple {6034#true} call #t~ret6 := main(); {6034#true} is VALID [2022-04-28 05:35:48,901 INFO L290 TraceCheckUtils]: 5: Hoare triple {6034#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; {6034#true} is VALID [2022-04-28 05:35:48,901 INFO L272 TraceCheckUtils]: 6: Hoare triple {6034#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,901 INFO L290 TraceCheckUtils]: 7: Hoare triple {6034#true} ~cond := #in~cond; {6060#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:48,902 INFO L290 TraceCheckUtils]: 8: Hoare triple {6060#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6064#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:48,902 INFO L290 TraceCheckUtils]: 9: Hoare triple {6064#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6064#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:48,903 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6064#(not (= |assume_abort_if_not_#in~cond| 0))} {6034#true} #66#return; {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:48,903 INFO L290 TraceCheckUtils]: 11: Hoare triple {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:48,903 INFO L272 TraceCheckUtils]: 12: Hoare triple {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,903 INFO L290 TraceCheckUtils]: 13: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,903 INFO L290 TraceCheckUtils]: 14: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,903 INFO L290 TraceCheckUtils]: 15: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6034#true} {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #68#return; {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:48,904 INFO L272 TraceCheckUtils]: 17: Hoare triple {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L290 TraceCheckUtils]: 19: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6034#true} {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #70#return; {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:48,904 INFO L272 TraceCheckUtils]: 22: Hoare triple {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L290 TraceCheckUtils]: 23: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,904 INFO L290 TraceCheckUtils]: 24: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,905 INFO L290 TraceCheckUtils]: 25: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,905 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6034#true} {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #72#return; {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:48,905 INFO L290 TraceCheckUtils]: 27: Hoare triple {6071#(and (<= 0 main_~x~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:48,906 INFO L290 TraceCheckUtils]: 28: Hoare triple {6123#(<= main_~a~0 2)} assume !false; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:48,906 INFO L272 TraceCheckUtils]: 29: Hoare triple {6123#(<= main_~a~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,906 INFO L290 TraceCheckUtils]: 30: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,906 INFO L290 TraceCheckUtils]: 31: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,906 INFO L290 TraceCheckUtils]: 32: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,906 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6034#true} {6123#(<= main_~a~0 2)} #74#return; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:48,906 INFO L272 TraceCheckUtils]: 34: Hoare triple {6123#(<= main_~a~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L290 TraceCheckUtils]: 35: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L290 TraceCheckUtils]: 36: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L290 TraceCheckUtils]: 37: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6034#true} {6123#(<= main_~a~0 2)} #76#return; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:48,907 INFO L272 TraceCheckUtils]: 39: Hoare triple {6123#(<= main_~a~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L290 TraceCheckUtils]: 40: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L290 TraceCheckUtils]: 41: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,907 INFO L290 TraceCheckUtils]: 42: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,908 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {6034#true} {6123#(<= main_~a~0 2)} #78#return; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:48,908 INFO L290 TraceCheckUtils]: 44: Hoare triple {6123#(<= main_~a~0 2)} assume !!(~a~0 != ~b~0); {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:48,909 INFO L290 TraceCheckUtils]: 45: Hoare triple {6123#(<= 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; {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} is VALID [2022-04-28 05:35:48,909 INFO L290 TraceCheckUtils]: 46: Hoare triple {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} assume !false; {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} is VALID [2022-04-28 05:35:48,909 INFO L272 TraceCheckUtils]: 47: Hoare triple {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L290 TraceCheckUtils]: 48: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L290 TraceCheckUtils]: 49: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L290 TraceCheckUtils]: 50: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {6034#true} {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} #74#return; {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} is VALID [2022-04-28 05:35:48,910 INFO L272 TraceCheckUtils]: 52: Hoare triple {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L290 TraceCheckUtils]: 53: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,910 INFO L290 TraceCheckUtils]: 55: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,911 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {6034#true} {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} #76#return; {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} is VALID [2022-04-28 05:35:48,911 INFO L272 TraceCheckUtils]: 57: Hoare triple {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:48,911 INFO L290 TraceCheckUtils]: 58: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:48,911 INFO L290 TraceCheckUtils]: 59: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:48,911 INFO L290 TraceCheckUtils]: 60: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:48,912 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {6034#true} {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} #78#return; {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} is VALID [2022-04-28 05:35:48,912 INFO L290 TraceCheckUtils]: 62: Hoare triple {6178#(and (< 0 main_~a~0) (< main_~b~0 2))} assume !!(~a~0 != ~b~0); {6230#(and (< 0 main_~a~0) (not (= main_~b~0 main_~a~0)) (< main_~b~0 2))} is VALID [2022-04-28 05:35:48,913 INFO L290 TraceCheckUtils]: 63: Hoare triple {6230#(and (< 0 main_~a~0) (not (= main_~b~0 main_~a~0)) (< main_~b~0 2))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {6035#false} is VALID [2022-04-28 05:35:48,913 INFO L290 TraceCheckUtils]: 64: Hoare triple {6035#false} assume !false; {6035#false} is VALID [2022-04-28 05:35:48,913 INFO L272 TraceCheckUtils]: 65: Hoare triple {6035#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6035#false} is VALID [2022-04-28 05:35:48,913 INFO L290 TraceCheckUtils]: 66: Hoare triple {6035#false} ~cond := #in~cond; {6035#false} is VALID [2022-04-28 05:35:48,913 INFO L290 TraceCheckUtils]: 67: Hoare triple {6035#false} assume 0 == ~cond; {6035#false} is VALID [2022-04-28 05:35:48,913 INFO L290 TraceCheckUtils]: 68: Hoare triple {6035#false} assume !false; {6035#false} is VALID [2022-04-28 05:35:48,913 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 16 proven. 15 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-04-28 05:35:48,913 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:49,377 INFO L290 TraceCheckUtils]: 68: Hoare triple {6035#false} assume !false; {6035#false} is VALID [2022-04-28 05:35:49,377 INFO L290 TraceCheckUtils]: 67: Hoare triple {6035#false} assume 0 == ~cond; {6035#false} is VALID [2022-04-28 05:35:49,377 INFO L290 TraceCheckUtils]: 66: Hoare triple {6035#false} ~cond := #in~cond; {6035#false} is VALID [2022-04-28 05:35:49,378 INFO L272 TraceCheckUtils]: 65: Hoare triple {6035#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6035#false} is VALID [2022-04-28 05:35:49,378 INFO L290 TraceCheckUtils]: 64: Hoare triple {6035#false} assume !false; {6035#false} is VALID [2022-04-28 05:35:49,378 INFO L290 TraceCheckUtils]: 63: Hoare triple {6264#(< 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; {6035#false} is VALID [2022-04-28 05:35:49,378 INFO L290 TraceCheckUtils]: 62: Hoare triple {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} assume !!(~a~0 != ~b~0); {6264#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:35:49,379 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {6034#true} {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #78#return; {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:49,379 INFO L290 TraceCheckUtils]: 60: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,379 INFO L290 TraceCheckUtils]: 59: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,379 INFO L290 TraceCheckUtils]: 58: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,379 INFO L272 TraceCheckUtils]: 57: Hoare triple {6268#(or (< main_~b~0 main_~a~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)); {6034#true} is VALID [2022-04-28 05:35:49,379 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {6034#true} {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #76#return; {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:49,380 INFO L290 TraceCheckUtils]: 55: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,380 INFO L290 TraceCheckUtils]: 54: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,380 INFO L290 TraceCheckUtils]: 53: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,380 INFO L272 TraceCheckUtils]: 52: Hoare triple {6268#(or (< main_~b~0 main_~a~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)); {6034#true} is VALID [2022-04-28 05:35:49,388 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {6034#true} {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #74#return; {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:49,388 INFO L290 TraceCheckUtils]: 50: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,388 INFO L290 TraceCheckUtils]: 49: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,388 INFO L290 TraceCheckUtils]: 48: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,388 INFO L272 TraceCheckUtils]: 47: Hoare triple {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,388 INFO L290 TraceCheckUtils]: 46: Hoare triple {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} assume !false; {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:49,389 INFO L290 TraceCheckUtils]: 45: Hoare triple {6123#(<= 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; {6268#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:49,389 INFO L290 TraceCheckUtils]: 44: Hoare triple {6123#(<= main_~a~0 2)} assume !!(~a~0 != ~b~0); {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:49,390 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {6034#true} {6123#(<= main_~a~0 2)} #78#return; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:49,390 INFO L290 TraceCheckUtils]: 42: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,390 INFO L290 TraceCheckUtils]: 41: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,390 INFO L290 TraceCheckUtils]: 40: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,390 INFO L272 TraceCheckUtils]: 39: Hoare triple {6123#(<= main_~a~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,391 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6034#true} {6123#(<= main_~a~0 2)} #76#return; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:49,391 INFO L290 TraceCheckUtils]: 37: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,391 INFO L290 TraceCheckUtils]: 36: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,391 INFO L290 TraceCheckUtils]: 35: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,391 INFO L272 TraceCheckUtils]: 34: Hoare triple {6123#(<= main_~a~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,392 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6034#true} {6123#(<= main_~a~0 2)} #74#return; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:49,392 INFO L290 TraceCheckUtils]: 32: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,392 INFO L290 TraceCheckUtils]: 31: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,392 INFO L290 TraceCheckUtils]: 30: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,392 INFO L272 TraceCheckUtils]: 29: Hoare triple {6123#(<= main_~a~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,392 INFO L290 TraceCheckUtils]: 28: Hoare triple {6123#(<= main_~a~0 2)} assume !false; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:49,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {6374#(<= main_~x~0 2)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6123#(<= main_~a~0 2)} is VALID [2022-04-28 05:35:49,393 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6034#true} {6374#(<= main_~x~0 2)} #72#return; {6374#(<= main_~x~0 2)} is VALID [2022-04-28 05:35:49,393 INFO L290 TraceCheckUtils]: 25: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,393 INFO L290 TraceCheckUtils]: 24: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,393 INFO L290 TraceCheckUtils]: 23: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,393 INFO L272 TraceCheckUtils]: 22: Hoare triple {6374#(<= main_~x~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6034#true} {6374#(<= main_~x~0 2)} #70#return; {6374#(<= main_~x~0 2)} is VALID [2022-04-28 05:35:49,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L290 TraceCheckUtils]: 19: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L290 TraceCheckUtils]: 18: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L272 TraceCheckUtils]: 17: Hoare triple {6374#(<= main_~x~0 2)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6034#true} {6374#(<= main_~x~0 2)} #68#return; {6374#(<= main_~x~0 2)} is VALID [2022-04-28 05:35:49,394 INFO L290 TraceCheckUtils]: 15: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L290 TraceCheckUtils]: 14: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-28 05:35:49,394 INFO L290 TraceCheckUtils]: 13: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-28 05:35:49,395 INFO L272 TraceCheckUtils]: 12: Hoare triple {6374#(<= main_~x~0 2)} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,395 INFO L290 TraceCheckUtils]: 11: Hoare triple {6374#(<= main_~x~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6374#(<= main_~x~0 2)} is VALID [2022-04-28 05:35:49,395 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6064#(not (= |assume_abort_if_not_#in~cond| 0))} {6034#true} #66#return; {6374#(<= main_~x~0 2)} is VALID [2022-04-28 05:35:49,396 INFO L290 TraceCheckUtils]: 9: Hoare triple {6064#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6064#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:49,396 INFO L290 TraceCheckUtils]: 8: Hoare triple {6435#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {6064#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:49,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {6034#true} ~cond := #in~cond; {6435#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:35:49,396 INFO L272 TraceCheckUtils]: 6: Hoare triple {6034#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {6034#true} is VALID [2022-04-28 05:35:49,396 INFO L290 TraceCheckUtils]: 5: Hoare triple {6034#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; {6034#true} is VALID [2022-04-28 05:35:49,396 INFO L272 TraceCheckUtils]: 4: Hoare triple {6034#true} call #t~ret6 := main(); {6034#true} is VALID [2022-04-28 05:35:49,397 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6034#true} {6034#true} #88#return; {6034#true} is VALID [2022-04-28 05:35:49,397 INFO L290 TraceCheckUtils]: 2: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-28 05:35:49,397 INFO L290 TraceCheckUtils]: 1: Hoare triple {6034#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); {6034#true} is VALID [2022-04-28 05:35:49,397 INFO L272 TraceCheckUtils]: 0: Hoare triple {6034#true} call ULTIMATE.init(); {6034#true} is VALID [2022-04-28 05:35:49,397 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 16 proven. 15 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-04-28 05:35:49,397 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:49,397 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1294194459] [2022-04-28 05:35:49,397 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:49,397 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1822449005] [2022-04-28 05:35:49,397 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1822449005] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:49,397 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:49,397 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-28 05:35:49,398 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:49,398 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1199368403] [2022-04-28 05:35:49,398 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1199368403] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:49,398 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:49,398 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:49,398 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [22620788] [2022-04-28 05:35:49,398 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:49,398 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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 69 [2022-04-28 05:35:49,398 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:49,399 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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-28 05:35:49,432 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-28 05:35:49,432 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:35:49,432 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:49,432 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:35:49,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:35:49,433 INFO L87 Difference]: Start difference. First operand 131 states and 167 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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-28 05:35:50,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:50,020 INFO L93 Difference]: Finished difference Result 156 states and 197 transitions. [2022-04-28 05:35:50,020 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:35:50,021 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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 69 [2022-04-28 05:35:50,021 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:50,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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-28 05:35:50,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 83 transitions. [2022-04-28 05:35:50,022 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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-28 05:35:50,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 83 transitions. [2022-04-28 05:35:50,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 83 transitions. [2022-04-28 05:35:50,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:50,089 INFO L225 Difference]: With dead ends: 156 [2022-04-28 05:35:50,089 INFO L226 Difference]: Without dead ends: 119 [2022-04-28 05:35:50,092 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 127 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=209, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:35:50,093 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 14 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 129 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 159 SdHoareTripleChecker+Invalid, 154 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 129 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:50,094 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 159 Invalid, 154 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 129 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:50,094 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-28 05:35:50,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 115. [2022-04-28 05:35:50,261 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:50,262 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 115 states, 64 states have (on average 1.109375) internal successors, (71), 68 states have internal predecessors, (71), 36 states have call successors, (36), 15 states have call predecessors, (36), 14 states have return successors, (33), 31 states have call predecessors, (33), 33 states have call successors, (33) [2022-04-28 05:35:50,262 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 115 states, 64 states have (on average 1.109375) internal successors, (71), 68 states have internal predecessors, (71), 36 states have call successors, (36), 15 states have call predecessors, (36), 14 states have return successors, (33), 31 states have call predecessors, (33), 33 states have call successors, (33) [2022-04-28 05:35:50,262 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 115 states, 64 states have (on average 1.109375) internal successors, (71), 68 states have internal predecessors, (71), 36 states have call successors, (36), 15 states have call predecessors, (36), 14 states have return successors, (33), 31 states have call predecessors, (33), 33 states have call successors, (33) [2022-04-28 05:35:50,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:50,265 INFO L93 Difference]: Finished difference Result 119 states and 145 transitions. [2022-04-28 05:35:50,265 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 145 transitions. [2022-04-28 05:35:50,265 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:50,265 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:50,266 INFO L74 IsIncluded]: Start isIncluded. First operand has 115 states, 64 states have (on average 1.109375) internal successors, (71), 68 states have internal predecessors, (71), 36 states have call successors, (36), 15 states have call predecessors, (36), 14 states have return successors, (33), 31 states have call predecessors, (33), 33 states have call successors, (33) Second operand 119 states. [2022-04-28 05:35:50,266 INFO L87 Difference]: Start difference. First operand has 115 states, 64 states have (on average 1.109375) internal successors, (71), 68 states have internal predecessors, (71), 36 states have call successors, (36), 15 states have call predecessors, (36), 14 states have return successors, (33), 31 states have call predecessors, (33), 33 states have call successors, (33) Second operand 119 states. [2022-04-28 05:35:50,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:50,268 INFO L93 Difference]: Finished difference Result 119 states and 145 transitions. [2022-04-28 05:35:50,268 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 145 transitions. [2022-04-28 05:35:50,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:50,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:50,269 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:50,269 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:50,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 115 states, 64 states have (on average 1.109375) internal successors, (71), 68 states have internal predecessors, (71), 36 states have call successors, (36), 15 states have call predecessors, (36), 14 states have return successors, (33), 31 states have call predecessors, (33), 33 states have call successors, (33) [2022-04-28 05:35:50,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 115 states to 115 states and 140 transitions. [2022-04-28 05:35:50,271 INFO L78 Accepts]: Start accepts. Automaton has 115 states and 140 transitions. Word has length 69 [2022-04-28 05:35:50,272 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:50,272 INFO L495 AbstractCegarLoop]: Abstraction has 115 states and 140 transitions. [2022-04-28 05:35:50,272 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 5 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-28 05:35:50,272 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 115 states and 140 transitions. [2022-04-28 05:35:50,433 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:50,434 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 140 transitions. [2022-04-28 05:35:50,434 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:35:50,434 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:50,435 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:50,452 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:50,640 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 05:35:50,640 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:50,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:50,640 INFO L85 PathProgramCache]: Analyzing trace with hash 1872855628, now seen corresponding path program 3 times [2022-04-28 05:35:50,640 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:50,641 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [720011312] [2022-04-28 05:35:50,641 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:50,641 INFO L85 PathProgramCache]: Analyzing trace with hash 1872855628, now seen corresponding path program 4 times [2022-04-28 05:35:50,641 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:50,641 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2062823743] [2022-04-28 05:35:50,641 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:50,641 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:50,651 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:50,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [762584700] [2022-04-28 05:35:50,652 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:35:50,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:50,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:50,653 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:50,658 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 05:35:50,690 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:35:50,690 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:50,691 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 05:35:50,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:50,705 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:51,054 INFO L272 TraceCheckUtils]: 0: Hoare triple {7249#true} call ULTIMATE.init(); {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {7249#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); {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 2: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7249#true} {7249#true} #88#return; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L272 TraceCheckUtils]: 4: Hoare triple {7249#true} call #t~ret6 := main(); {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 5: Hoare triple {7249#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; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L272 TraceCheckUtils]: 6: Hoare triple {7249#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 7: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 8: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7249#true} {7249#true} #66#return; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L290 TraceCheckUtils]: 11: Hoare triple {7249#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7249#true} is VALID [2022-04-28 05:35:51,054 INFO L272 TraceCheckUtils]: 12: Hoare triple {7249#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,055 INFO L290 TraceCheckUtils]: 13: Hoare triple {7249#true} ~cond := #in~cond; {7293#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:51,055 INFO L290 TraceCheckUtils]: 14: Hoare triple {7293#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {7297#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:51,055 INFO L290 TraceCheckUtils]: 15: Hoare triple {7297#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7297#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:51,056 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7297#(not (= |assume_abort_if_not_#in~cond| 0))} {7249#true} #68#return; {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-28 05:35:51,056 INFO L272 TraceCheckUtils]: 17: Hoare triple {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,056 INFO L290 TraceCheckUtils]: 18: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,056 INFO L290 TraceCheckUtils]: 19: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,056 INFO L290 TraceCheckUtils]: 20: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,056 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7249#true} {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} #70#return; {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-28 05:35:51,056 INFO L272 TraceCheckUtils]: 22: Hoare triple {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,056 INFO L290 TraceCheckUtils]: 23: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,057 INFO L290 TraceCheckUtils]: 24: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,057 INFO L290 TraceCheckUtils]: 25: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,057 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7249#true} {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} #72#return; {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-28 05:35:51,057 INFO L290 TraceCheckUtils]: 27: Hoare triple {7304#(and (<= 0 main_~y~0) (<= main_~y~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,057 INFO L290 TraceCheckUtils]: 28: Hoare triple {7338#(<= main_~b~0 2)} assume !false; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,058 INFO L272 TraceCheckUtils]: 29: Hoare triple {7338#(<= main_~b~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,058 INFO L290 TraceCheckUtils]: 30: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,058 INFO L290 TraceCheckUtils]: 31: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,058 INFO L290 TraceCheckUtils]: 32: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,059 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7249#true} {7338#(<= main_~b~0 2)} #74#return; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,059 INFO L272 TraceCheckUtils]: 34: Hoare triple {7338#(<= main_~b~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,059 INFO L290 TraceCheckUtils]: 35: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,059 INFO L290 TraceCheckUtils]: 36: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,060 INFO L290 TraceCheckUtils]: 37: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,060 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {7249#true} {7338#(<= main_~b~0 2)} #76#return; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,060 INFO L272 TraceCheckUtils]: 39: Hoare triple {7338#(<= main_~b~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,060 INFO L290 TraceCheckUtils]: 40: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,060 INFO L290 TraceCheckUtils]: 41: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,060 INFO L290 TraceCheckUtils]: 42: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,061 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {7249#true} {7338#(<= main_~b~0 2)} #78#return; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,061 INFO L290 TraceCheckUtils]: 44: Hoare triple {7338#(<= main_~b~0 2)} assume !!(~a~0 != ~b~0); {7390#(and (<= main_~b~0 2) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-28 05:35:51,062 INFO L290 TraceCheckUtils]: 45: Hoare triple {7390#(and (<= main_~b~0 2) (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; {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} is VALID [2022-04-28 05:35:51,062 INFO L290 TraceCheckUtils]: 46: Hoare triple {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} assume !false; {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} is VALID [2022-04-28 05:35:51,062 INFO L272 TraceCheckUtils]: 47: Hoare triple {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,062 INFO L290 TraceCheckUtils]: 48: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,062 INFO L290 TraceCheckUtils]: 49: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,062 INFO L290 TraceCheckUtils]: 50: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,063 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {7249#true} {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} #74#return; {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} is VALID [2022-04-28 05:35:51,063 INFO L272 TraceCheckUtils]: 52: Hoare triple {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,063 INFO L290 TraceCheckUtils]: 53: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,063 INFO L290 TraceCheckUtils]: 54: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,063 INFO L290 TraceCheckUtils]: 55: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,064 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {7249#true} {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} #76#return; {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} is VALID [2022-04-28 05:35:51,064 INFO L272 TraceCheckUtils]: 57: Hoare triple {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,064 INFO L290 TraceCheckUtils]: 58: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,064 INFO L290 TraceCheckUtils]: 59: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,064 INFO L290 TraceCheckUtils]: 60: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,064 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {7249#true} {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} #78#return; {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} is VALID [2022-04-28 05:35:51,065 INFO L290 TraceCheckUtils]: 62: Hoare triple {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} assume !!(~a~0 != ~b~0); {7394#(and (< main_~a~0 2) (< 0 main_~b~0))} is VALID [2022-04-28 05:35:51,065 INFO L290 TraceCheckUtils]: 63: Hoare triple {7394#(and (< main_~a~0 2) (< 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; {7250#false} is VALID [2022-04-28 05:35:51,065 INFO L290 TraceCheckUtils]: 64: Hoare triple {7250#false} assume !false; {7250#false} is VALID [2022-04-28 05:35:51,065 INFO L272 TraceCheckUtils]: 65: Hoare triple {7250#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7250#false} is VALID [2022-04-28 05:35:51,065 INFO L290 TraceCheckUtils]: 66: Hoare triple {7250#false} ~cond := #in~cond; {7250#false} is VALID [2022-04-28 05:35:51,066 INFO L290 TraceCheckUtils]: 67: Hoare triple {7250#false} assume 0 == ~cond; {7250#false} is VALID [2022-04-28 05:35:51,066 INFO L290 TraceCheckUtils]: 68: Hoare triple {7250#false} assume !false; {7250#false} is VALID [2022-04-28 05:35:51,066 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 19 proven. 12 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-04-28 05:35:51,066 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:51,457 INFO L290 TraceCheckUtils]: 68: Hoare triple {7250#false} assume !false; {7250#false} is VALID [2022-04-28 05:35:51,457 INFO L290 TraceCheckUtils]: 67: Hoare triple {7250#false} assume 0 == ~cond; {7250#false} is VALID [2022-04-28 05:35:51,457 INFO L290 TraceCheckUtils]: 66: Hoare triple {7250#false} ~cond := #in~cond; {7250#false} is VALID [2022-04-28 05:35:51,457 INFO L272 TraceCheckUtils]: 65: Hoare triple {7250#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7250#false} is VALID [2022-04-28 05:35:51,457 INFO L290 TraceCheckUtils]: 64: Hoare triple {7250#false} assume !false; {7250#false} is VALID [2022-04-28 05:35:51,457 INFO L290 TraceCheckUtils]: 63: Hoare triple {7479#(not (< 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; {7250#false} is VALID [2022-04-28 05:35:51,458 INFO L290 TraceCheckUtils]: 62: Hoare triple {7479#(not (< main_~b~0 main_~a~0))} assume !!(~a~0 != ~b~0); {7479#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:51,458 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {7249#true} {7479#(not (< main_~b~0 main_~a~0))} #78#return; {7479#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:51,458 INFO L290 TraceCheckUtils]: 60: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,458 INFO L290 TraceCheckUtils]: 59: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,458 INFO L290 TraceCheckUtils]: 58: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,458 INFO L272 TraceCheckUtils]: 57: Hoare triple {7479#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,459 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {7249#true} {7479#(not (< main_~b~0 main_~a~0))} #76#return; {7479#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:51,459 INFO L290 TraceCheckUtils]: 55: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,459 INFO L290 TraceCheckUtils]: 54: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,459 INFO L290 TraceCheckUtils]: 53: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,459 INFO L272 TraceCheckUtils]: 52: Hoare triple {7479#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,460 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {7249#true} {7479#(not (< main_~b~0 main_~a~0))} #74#return; {7479#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:51,460 INFO L290 TraceCheckUtils]: 50: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,460 INFO L290 TraceCheckUtils]: 49: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,460 INFO L290 TraceCheckUtils]: 48: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,460 INFO L272 TraceCheckUtils]: 47: Hoare triple {7479#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,460 INFO L290 TraceCheckUtils]: 46: Hoare triple {7479#(not (< main_~b~0 main_~a~0))} assume !false; {7479#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:51,461 INFO L290 TraceCheckUtils]: 45: Hoare triple {7534#(or (< main_~b~0 main_~a~0) (<= (* main_~a~0 2) 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; {7479#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:51,462 INFO L290 TraceCheckUtils]: 44: Hoare triple {7338#(<= main_~b~0 2)} assume !!(~a~0 != ~b~0); {7534#(or (< main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0))} is VALID [2022-04-28 05:35:51,462 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {7249#true} {7338#(<= main_~b~0 2)} #78#return; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,462 INFO L290 TraceCheckUtils]: 42: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,462 INFO L290 TraceCheckUtils]: 41: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,462 INFO L290 TraceCheckUtils]: 40: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,462 INFO L272 TraceCheckUtils]: 39: Hoare triple {7338#(<= main_~b~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,463 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {7249#true} {7338#(<= main_~b~0 2)} #76#return; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,463 INFO L290 TraceCheckUtils]: 37: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,463 INFO L290 TraceCheckUtils]: 36: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,463 INFO L290 TraceCheckUtils]: 35: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,463 INFO L272 TraceCheckUtils]: 34: Hoare triple {7338#(<= main_~b~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,464 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7249#true} {7338#(<= main_~b~0 2)} #74#return; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,464 INFO L290 TraceCheckUtils]: 32: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,464 INFO L290 TraceCheckUtils]: 31: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,464 INFO L290 TraceCheckUtils]: 30: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,464 INFO L272 TraceCheckUtils]: 29: Hoare triple {7338#(<= main_~b~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,464 INFO L290 TraceCheckUtils]: 28: Hoare triple {7338#(<= main_~b~0 2)} assume !false; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,465 INFO L290 TraceCheckUtils]: 27: Hoare triple {7589#(<= main_~y~0 2)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7338#(<= main_~b~0 2)} is VALID [2022-04-28 05:35:51,465 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7249#true} {7589#(<= main_~y~0 2)} #72#return; {7589#(<= main_~y~0 2)} is VALID [2022-04-28 05:35:51,465 INFO L290 TraceCheckUtils]: 25: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,465 INFO L272 TraceCheckUtils]: 22: Hoare triple {7589#(<= main_~y~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,466 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7249#true} {7589#(<= main_~y~0 2)} #70#return; {7589#(<= main_~y~0 2)} is VALID [2022-04-28 05:35:51,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,466 INFO L290 TraceCheckUtils]: 19: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,466 INFO L290 TraceCheckUtils]: 18: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,466 INFO L272 TraceCheckUtils]: 17: Hoare triple {7589#(<= main_~y~0 2)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,466 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7297#(not (= |assume_abort_if_not_#in~cond| 0))} {7249#true} #68#return; {7589#(<= main_~y~0 2)} is VALID [2022-04-28 05:35:51,466 INFO L290 TraceCheckUtils]: 15: Hoare triple {7297#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7297#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:51,467 INFO L290 TraceCheckUtils]: 14: Hoare triple {7632#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {7297#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:51,467 INFO L290 TraceCheckUtils]: 13: Hoare triple {7249#true} ~cond := #in~cond; {7632#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:35:51,467 INFO L272 TraceCheckUtils]: 12: Hoare triple {7249#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,467 INFO L290 TraceCheckUtils]: 11: Hoare triple {7249#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7249#true} is VALID [2022-04-28 05:35:51,467 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7249#true} {7249#true} #66#return; {7249#true} is VALID [2022-04-28 05:35:51,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {7249#true} assume !(0 == ~cond); {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L290 TraceCheckUtils]: 7: Hoare triple {7249#true} ~cond := #in~cond; {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L272 TraceCheckUtils]: 6: Hoare triple {7249#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L290 TraceCheckUtils]: 5: Hoare triple {7249#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; {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L272 TraceCheckUtils]: 4: Hoare triple {7249#true} call #t~ret6 := main(); {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7249#true} {7249#true} #88#return; {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {7249#true} assume true; {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {7249#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); {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L272 TraceCheckUtils]: 0: Hoare triple {7249#true} call ULTIMATE.init(); {7249#true} is VALID [2022-04-28 05:35:51,468 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 19 proven. 12 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-04-28 05:35:51,468 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:51,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2062823743] [2022-04-28 05:35:51,468 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:51,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [762584700] [2022-04-28 05:35:51,468 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [762584700] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:51,469 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:51,469 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-28 05:35:51,469 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:51,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [720011312] [2022-04-28 05:35:51,469 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [720011312] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:51,469 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:51,469 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:51,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1122042488] [2022-04-28 05:35:51,469 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:51,469 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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 69 [2022-04-28 05:35:51,470 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:51,470 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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-28 05:35:51,505 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-28 05:35:51,505 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:35:51,506 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:51,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:35:51,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:35:51,506 INFO L87 Difference]: Start difference. First operand 115 states and 140 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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-28 05:35:52,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:52,025 INFO L93 Difference]: Finished difference Result 133 states and 154 transitions. [2022-04-28 05:35:52,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:35:52,026 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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 69 [2022-04-28 05:35:52,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:52,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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-28 05:35:52,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-04-28 05:35:52,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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-28 05:35:52,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-04-28 05:35:52,029 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 82 transitions. [2022-04-28 05:35:52,094 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-28 05:35:52,096 INFO L225 Difference]: With dead ends: 133 [2022-04-28 05:35:52,096 INFO L226 Difference]: Without dead ends: 106 [2022-04-28 05:35:52,097 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 126 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:35:52,097 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 13 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 113 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 123 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 113 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:52,097 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 176 Invalid, 123 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 113 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:52,098 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-04-28 05:35:52,284 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 106. [2022-04-28 05:35:52,284 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:52,285 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 106 states, 61 states have (on average 1.0819672131147542) internal successors, (66), 64 states have internal predecessors, (66), 30 states have call successors, (30), 15 states have call predecessors, (30), 14 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:35:52,285 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 106 states, 61 states have (on average 1.0819672131147542) internal successors, (66), 64 states have internal predecessors, (66), 30 states have call successors, (30), 15 states have call predecessors, (30), 14 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:35:52,285 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 106 states, 61 states have (on average 1.0819672131147542) internal successors, (66), 64 states have internal predecessors, (66), 30 states have call successors, (30), 15 states have call predecessors, (30), 14 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:35:52,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:52,287 INFO L93 Difference]: Finished difference Result 106 states and 124 transitions. [2022-04-28 05:35:52,287 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 124 transitions. [2022-04-28 05:35:52,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:52,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:52,287 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 61 states have (on average 1.0819672131147542) internal successors, (66), 64 states have internal predecessors, (66), 30 states have call successors, (30), 15 states have call predecessors, (30), 14 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 106 states. [2022-04-28 05:35:52,288 INFO L87 Difference]: Start difference. First operand has 106 states, 61 states have (on average 1.0819672131147542) internal successors, (66), 64 states have internal predecessors, (66), 30 states have call successors, (30), 15 states have call predecessors, (30), 14 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 106 states. [2022-04-28 05:35:52,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:52,289 INFO L93 Difference]: Finished difference Result 106 states and 124 transitions. [2022-04-28 05:35:52,289 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 124 transitions. [2022-04-28 05:35:52,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:52,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:52,290 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:52,290 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:52,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 61 states have (on average 1.0819672131147542) internal successors, (66), 64 states have internal predecessors, (66), 30 states have call successors, (30), 15 states have call predecessors, (30), 14 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:35:52,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 124 transitions. [2022-04-28 05:35:52,292 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 124 transitions. Word has length 69 [2022-04-28 05:35:52,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:52,292 INFO L495 AbstractCegarLoop]: Abstraction has 106 states and 124 transitions. [2022-04-28 05:35:52,292 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 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-28 05:35:52,292 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 124 transitions. [2022-04-28 05:35:52,449 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:52,449 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 124 transitions. [2022-04-28 05:35:52,449 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-28 05:35:52,449 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:52,449 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:52,466 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-28 05:35:52,661 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 05:35:52,661 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:52,662 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:52,662 INFO L85 PathProgramCache]: Analyzing trace with hash 1196252297, now seen corresponding path program 5 times [2022-04-28 05:35:52,662 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:52,662 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [212388357] [2022-04-28 05:35:52,662 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:52,662 INFO L85 PathProgramCache]: Analyzing trace with hash 1196252297, now seen corresponding path program 6 times [2022-04-28 05:35:52,662 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:52,662 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [892389398] [2022-04-28 05:35:52,662 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:52,663 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:52,673 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:52,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [283800499] [2022-04-28 05:35:52,673 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:35:52,673 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:52,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:52,674 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:52,674 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 05:35:52,722 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:35:52,722 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:52,723 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:35:52,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:52,737 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:53,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {8372#true} call ULTIMATE.init(); {8372#true} is VALID [2022-04-28 05:35:53,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {8372#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); {8372#true} is VALID [2022-04-28 05:35:53,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,069 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8372#true} {8372#true} #88#return; {8372#true} is VALID [2022-04-28 05:35:53,069 INFO L272 TraceCheckUtils]: 4: Hoare triple {8372#true} call #t~ret6 := main(); {8372#true} is VALID [2022-04-28 05:35:53,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {8372#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; {8372#true} is VALID [2022-04-28 05:35:53,069 INFO L272 TraceCheckUtils]: 6: Hoare triple {8372#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:53,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {8372#true} ~cond := #in~cond; {8398#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:53,070 INFO L290 TraceCheckUtils]: 8: Hoare triple {8398#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:53,070 INFO L290 TraceCheckUtils]: 9: Hoare triple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:53,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} {8372#true} #66#return; {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:53,071 INFO L290 TraceCheckUtils]: 11: Hoare triple {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:53,071 INFO L272 TraceCheckUtils]: 12: Hoare triple {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:53,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,071 INFO L290 TraceCheckUtils]: 15: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,079 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8372#true} {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #68#return; {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:53,080 INFO L272 TraceCheckUtils]: 17: Hoare triple {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:53,080 INFO L290 TraceCheckUtils]: 18: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,080 INFO L290 TraceCheckUtils]: 19: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,080 INFO L290 TraceCheckUtils]: 20: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,080 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8372#true} {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #70#return; {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:53,080 INFO L272 TraceCheckUtils]: 22: Hoare triple {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:53,081 INFO L290 TraceCheckUtils]: 23: Hoare triple {8372#true} ~cond := #in~cond; {8398#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:53,081 INFO L290 TraceCheckUtils]: 24: Hoare triple {8398#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:53,081 INFO L290 TraceCheckUtils]: 25: Hoare triple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:53,082 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} {8409#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #72#return; {8458#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 05:35:53,082 INFO L290 TraceCheckUtils]: 27: Hoare triple {8458#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,082 INFO L290 TraceCheckUtils]: 28: Hoare triple {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} assume !false; {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,083 INFO L272 TraceCheckUtils]: 29: Hoare triple {8462#(and (<= 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)); {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L290 TraceCheckUtils]: 30: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L290 TraceCheckUtils]: 31: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L290 TraceCheckUtils]: 32: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8372#true} {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} #74#return; {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,083 INFO L272 TraceCheckUtils]: 34: Hoare triple {8462#(and (<= 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)); {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L290 TraceCheckUtils]: 35: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L290 TraceCheckUtils]: 36: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,083 INFO L290 TraceCheckUtils]: 37: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,084 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {8372#true} {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} #76#return; {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,084 INFO L272 TraceCheckUtils]: 39: Hoare triple {8462#(and (<= 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)); {8372#true} is VALID [2022-04-28 05:35:53,084 INFO L290 TraceCheckUtils]: 40: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,084 INFO L290 TraceCheckUtils]: 41: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,084 INFO L290 TraceCheckUtils]: 42: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,085 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {8372#true} {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} #78#return; {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,085 INFO L290 TraceCheckUtils]: 44: Hoare triple {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} assume !!(~a~0 != ~b~0); {8462#(and (<= main_~a~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,086 INFO L290 TraceCheckUtils]: 45: Hoare triple {8462#(and (<= main_~a~0 2) (<= 1 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; {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,086 INFO L290 TraceCheckUtils]: 46: Hoare triple {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} assume !false; {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,086 INFO L272 TraceCheckUtils]: 47: Hoare triple {8517#(and (<= (+ main_~b~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)); {8372#true} is VALID [2022-04-28 05:35:53,086 INFO L290 TraceCheckUtils]: 48: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,086 INFO L290 TraceCheckUtils]: 49: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,087 INFO L290 TraceCheckUtils]: 50: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,087 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8372#true} {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} #74#return; {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,087 INFO L272 TraceCheckUtils]: 52: Hoare triple {8517#(and (<= (+ main_~b~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)); {8372#true} is VALID [2022-04-28 05:35:53,087 INFO L290 TraceCheckUtils]: 53: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,087 INFO L290 TraceCheckUtils]: 54: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,087 INFO L290 TraceCheckUtils]: 55: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,088 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8372#true} {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} #76#return; {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,088 INFO L272 TraceCheckUtils]: 57: Hoare triple {8517#(and (<= (+ main_~b~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)); {8372#true} is VALID [2022-04-28 05:35:53,088 INFO L290 TraceCheckUtils]: 58: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:53,088 INFO L290 TraceCheckUtils]: 59: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:53,088 INFO L290 TraceCheckUtils]: 60: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:53,089 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {8372#true} {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} #78#return; {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,089 INFO L290 TraceCheckUtils]: 62: Hoare triple {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} assume !!(~a~0 != ~b~0); {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 63: Hoare triple {8517#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 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; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 64: Hoare triple {8373#false} assume !false; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L272 TraceCheckUtils]: 65: Hoare triple {8373#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 66: Hoare triple {8373#false} ~cond := #in~cond; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 67: Hoare triple {8373#false} assume !(0 == ~cond); {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 68: Hoare triple {8373#false} assume true; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {8373#false} {8373#false} #74#return; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L272 TraceCheckUtils]: 70: Hoare triple {8373#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 71: Hoare triple {8373#false} ~cond := #in~cond; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 72: Hoare triple {8373#false} assume 0 == ~cond; {8373#false} is VALID [2022-04-28 05:35:53,090 INFO L290 TraceCheckUtils]: 73: Hoare triple {8373#false} assume !false; {8373#false} is VALID [2022-04-28 05:35:53,091 INFO L134 CoverageAnalysis]: Checked inductivity of 134 backedges. 54 proven. 6 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-28 05:35:53,091 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 73: Hoare triple {8373#false} assume !false; {8373#false} is VALID [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 72: Hoare triple {8373#false} assume 0 == ~cond; {8373#false} is VALID [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 71: Hoare triple {8373#false} ~cond := #in~cond; {8373#false} is VALID [2022-04-28 05:35:54,002 INFO L272 TraceCheckUtils]: 70: Hoare triple {8373#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8373#false} is VALID [2022-04-28 05:35:54,002 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {8372#true} {8373#false} #74#return; {8373#false} is VALID [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 68: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 67: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 66: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,002 INFO L272 TraceCheckUtils]: 65: Hoare triple {8373#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,002 INFO L290 TraceCheckUtils]: 64: Hoare triple {8373#false} assume !false; {8373#false} is VALID [2022-04-28 05:35:54,003 INFO L290 TraceCheckUtils]: 63: Hoare triple {8632#(not (< 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; {8373#false} is VALID [2022-04-28 05:35:54,003 INFO L290 TraceCheckUtils]: 62: Hoare triple {8632#(not (< main_~b~0 main_~a~0))} assume !!(~a~0 != ~b~0); {8632#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:54,003 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {8372#true} {8632#(not (< main_~b~0 main_~a~0))} #78#return; {8632#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:54,003 INFO L290 TraceCheckUtils]: 60: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L290 TraceCheckUtils]: 59: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L290 TraceCheckUtils]: 58: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L272 TraceCheckUtils]: 57: Hoare triple {8632#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8372#true} {8632#(not (< main_~b~0 main_~a~0))} #76#return; {8632#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:54,004 INFO L290 TraceCheckUtils]: 55: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L290 TraceCheckUtils]: 54: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L290 TraceCheckUtils]: 53: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,004 INFO L272 TraceCheckUtils]: 52: Hoare triple {8632#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,005 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8372#true} {8632#(not (< main_~b~0 main_~a~0))} #74#return; {8632#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:54,006 INFO L290 TraceCheckUtils]: 50: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,006 INFO L290 TraceCheckUtils]: 49: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,006 INFO L290 TraceCheckUtils]: 48: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,006 INFO L272 TraceCheckUtils]: 47: Hoare triple {8632#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,006 INFO L290 TraceCheckUtils]: 46: Hoare triple {8632#(not (< main_~b~0 main_~a~0))} assume !false; {8632#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:54,008 INFO L290 TraceCheckUtils]: 45: Hoare triple {8687#(<= main_~a~0 (* main_~b~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; {8632#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:54,008 INFO L290 TraceCheckUtils]: 44: Hoare triple {8687#(<= main_~a~0 (* main_~b~0 2))} assume !!(~a~0 != ~b~0); {8687#(<= main_~a~0 (* main_~b~0 2))} is VALID [2022-04-28 05:35:54,009 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {8372#true} {8687#(<= main_~a~0 (* main_~b~0 2))} #78#return; {8687#(<= main_~a~0 (* main_~b~0 2))} is VALID [2022-04-28 05:35:54,009 INFO L290 TraceCheckUtils]: 42: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,009 INFO L290 TraceCheckUtils]: 41: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,009 INFO L290 TraceCheckUtils]: 40: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,009 INFO L272 TraceCheckUtils]: 39: Hoare triple {8687#(<= main_~a~0 (* main_~b~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,009 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {8372#true} {8687#(<= main_~a~0 (* main_~b~0 2))} #76#return; {8687#(<= main_~a~0 (* main_~b~0 2))} is VALID [2022-04-28 05:35:54,009 INFO L290 TraceCheckUtils]: 37: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L290 TraceCheckUtils]: 36: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L290 TraceCheckUtils]: 35: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L272 TraceCheckUtils]: 34: Hoare triple {8687#(<= main_~a~0 (* main_~b~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8372#true} {8687#(<= main_~a~0 (* main_~b~0 2))} #74#return; {8687#(<= main_~a~0 (* main_~b~0 2))} is VALID [2022-04-28 05:35:54,010 INFO L290 TraceCheckUtils]: 32: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L290 TraceCheckUtils]: 31: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L290 TraceCheckUtils]: 30: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,010 INFO L272 TraceCheckUtils]: 29: Hoare triple {8687#(<= main_~a~0 (* main_~b~0 2))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,011 INFO L290 TraceCheckUtils]: 28: Hoare triple {8687#(<= main_~a~0 (* main_~b~0 2))} assume !false; {8687#(<= main_~a~0 (* main_~b~0 2))} is VALID [2022-04-28 05:35:54,011 INFO L290 TraceCheckUtils]: 27: Hoare triple {8742#(<= (div (- main_~x~0) (- 2)) main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8687#(<= main_~a~0 (* main_~b~0 2))} is VALID [2022-04-28 05:35:54,028 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} #72#return; {8742#(<= (div (- main_~x~0) (- 2)) main_~y~0)} is VALID [2022-04-28 05:35:54,029 INFO L290 TraceCheckUtils]: 25: Hoare triple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:54,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {8756#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:54,030 INFO L290 TraceCheckUtils]: 23: Hoare triple {8372#true} ~cond := #in~cond; {8756#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:35:54,030 INFO L272 TraceCheckUtils]: 22: Hoare triple {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,030 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8372#true} {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} #70#return; {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} is VALID [2022-04-28 05:35:54,031 INFO L290 TraceCheckUtils]: 20: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L290 TraceCheckUtils]: 19: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L290 TraceCheckUtils]: 18: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L272 TraceCheckUtils]: 17: Hoare triple {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8372#true} {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} #68#return; {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} is VALID [2022-04-28 05:35:54,031 INFO L290 TraceCheckUtils]: 15: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L290 TraceCheckUtils]: 14: Hoare triple {8372#true} assume !(0 == ~cond); {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L290 TraceCheckUtils]: 13: Hoare triple {8372#true} ~cond := #in~cond; {8372#true} is VALID [2022-04-28 05:35:54,031 INFO L272 TraceCheckUtils]: 12: Hoare triple {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,032 INFO L290 TraceCheckUtils]: 11: Hoare triple {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} is VALID [2022-04-28 05:35:54,033 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} {8372#true} #66#return; {8746#(<= (div (* (- 1) main_~x~0) (- 2)) 1)} is VALID [2022-04-28 05:35:54,033 INFO L290 TraceCheckUtils]: 9: Hoare triple {8402#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:54,033 INFO L290 TraceCheckUtils]: 8: Hoare triple {8756#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {8402#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:54,033 INFO L290 TraceCheckUtils]: 7: Hoare triple {8372#true} ~cond := #in~cond; {8756#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:35:54,034 INFO L272 TraceCheckUtils]: 6: Hoare triple {8372#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {8372#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; {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L272 TraceCheckUtils]: 4: Hoare triple {8372#true} call #t~ret6 := main(); {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8372#true} {8372#true} #88#return; {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {8372#true} assume true; {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {8372#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); {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L272 TraceCheckUtils]: 0: Hoare triple {8372#true} call ULTIMATE.init(); {8372#true} is VALID [2022-04-28 05:35:54,034 INFO L134 CoverageAnalysis]: Checked inductivity of 134 backedges. 26 proven. 12 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-28 05:35:54,034 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:54,034 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [892389398] [2022-04-28 05:35:54,034 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:54,034 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [283800499] [2022-04-28 05:35:54,034 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [283800499] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:54,034 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:54,035 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 13 [2022-04-28 05:35:54,035 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:54,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [212388357] [2022-04-28 05:35:54,035 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [212388357] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:54,035 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:54,035 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:35:54,035 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1968076037] [2022-04-28 05:35:54,035 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:54,035 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Word has length 74 [2022-04-28 05:35:54,036 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:54,036 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:35:54,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:54,072 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:35:54,072 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:54,072 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:35:54,072 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:35:54,073 INFO L87 Difference]: Start difference. First operand 106 states and 124 transitions. Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:35:54,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:54,600 INFO L93 Difference]: Finished difference Result 123 states and 139 transitions. [2022-04-28 05:35:54,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:35:54,600 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Word has length 74 [2022-04-28 05:35:54,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:54,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:35:54,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 75 transitions. [2022-04-28 05:35:54,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:35:54,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 75 transitions. [2022-04-28 05:35:54,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 75 transitions. [2022-04-28 05:35:54,665 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-28 05:35:54,667 INFO L225 Difference]: With dead ends: 123 [2022-04-28 05:35:54,667 INFO L226 Difference]: Without dead ends: 85 [2022-04-28 05:35:54,667 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 150 GetRequests, 136 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=57, Invalid=183, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:35:54,668 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 10 mSDsluCounter, 148 mSDsCounter, 0 mSdLazyCounter, 115 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 191 SdHoareTripleChecker+Invalid, 124 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 115 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:54,668 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 191 Invalid, 124 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 115 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:54,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-28 05:35:54,813 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2022-04-28 05:35:54,813 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:54,813 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 85 states, 48 states have (on average 1.0833333333333333) internal successors, (52), 50 states have internal predecessors, (52), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 05:35:54,813 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 85 states, 48 states have (on average 1.0833333333333333) internal successors, (52), 50 states have internal predecessors, (52), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 05:35:54,813 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 85 states, 48 states have (on average 1.0833333333333333) internal successors, (52), 50 states have internal predecessors, (52), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 05:35:54,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:54,815 INFO L93 Difference]: Finished difference Result 85 states and 100 transitions. [2022-04-28 05:35:54,815 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 100 transitions. [2022-04-28 05:35:54,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:54,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:54,816 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 48 states have (on average 1.0833333333333333) internal successors, (52), 50 states have internal predecessors, (52), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 85 states. [2022-04-28 05:35:54,816 INFO L87 Difference]: Start difference. First operand has 85 states, 48 states have (on average 1.0833333333333333) internal successors, (52), 50 states have internal predecessors, (52), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 85 states. [2022-04-28 05:35:54,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:54,817 INFO L93 Difference]: Finished difference Result 85 states and 100 transitions. [2022-04-28 05:35:54,817 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 100 transitions. [2022-04-28 05:35:54,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:54,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:54,818 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:54,818 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:54,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 48 states have (on average 1.0833333333333333) internal successors, (52), 50 states have internal predecessors, (52), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 05:35:54,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 100 transitions. [2022-04-28 05:35:54,819 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 100 transitions. Word has length 74 [2022-04-28 05:35:54,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:54,820 INFO L495 AbstractCegarLoop]: Abstraction has 85 states and 100 transitions. [2022-04-28 05:35:54,820 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:35:54,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 85 states and 100 transitions. [2022-04-28 05:35:54,932 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-28 05:35:54,932 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 100 transitions. [2022-04-28 05:35:54,932 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-28 05:35:54,933 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:35:54,933 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:35:54,950 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:55,147 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-28 05:35:55,147 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:35:55,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:35:55,148 INFO L85 PathProgramCache]: Analyzing trace with hash 2066842922, now seen corresponding path program 3 times [2022-04-28 05:35:55,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:55,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1306901865] [2022-04-28 05:35:55,148 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:35:55,148 INFO L85 PathProgramCache]: Analyzing trace with hash 2066842922, now seen corresponding path program 4 times [2022-04-28 05:35:55,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:35:55,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1522991181] [2022-04-28 05:35:55,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:35:55,149 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:35:55,160 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:35:55,160 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [17346752] [2022-04-28 05:35:55,160 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:35:55,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:35:55,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:35:55,161 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:35:55,162 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 05:35:55,201 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:35:55,201 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:35:55,202 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:35:55,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:35:55,217 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:35:55,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {9420#true} call ULTIMATE.init(); {9420#true} is VALID [2022-04-28 05:35:55,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {9420#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); {9420#true} is VALID [2022-04-28 05:35:55,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,670 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9420#true} {9420#true} #88#return; {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L272 TraceCheckUtils]: 4: Hoare triple {9420#true} call #t~ret6 := main(); {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {9420#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; {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L272 TraceCheckUtils]: 6: Hoare triple {9420#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L290 TraceCheckUtils]: 7: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L290 TraceCheckUtils]: 8: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L290 TraceCheckUtils]: 9: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9420#true} {9420#true} #66#return; {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L290 TraceCheckUtils]: 11: Hoare triple {9420#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L272 TraceCheckUtils]: 12: Hoare triple {9420#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,671 INFO L290 TraceCheckUtils]: 13: Hoare triple {9420#true} ~cond := #in~cond; {9464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:55,672 INFO L290 TraceCheckUtils]: 14: Hoare triple {9464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:55,672 INFO L290 TraceCheckUtils]: 15: Hoare triple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:55,672 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} {9420#true} #68#return; {9475#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-28 05:35:55,672 INFO L272 TraceCheckUtils]: 17: Hoare triple {9475#(and (<= 0 main_~y~0) (<= main_~y~0 2))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,673 INFO L290 TraceCheckUtils]: 18: Hoare triple {9420#true} ~cond := #in~cond; {9464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:35:55,673 INFO L290 TraceCheckUtils]: 19: Hoare triple {9464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:55,673 INFO L290 TraceCheckUtils]: 20: Hoare triple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:55,674 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} {9475#(and (<= 0 main_~y~0) (<= main_~y~0 2))} #70#return; {9491#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 2))} is VALID [2022-04-28 05:35:55,674 INFO L272 TraceCheckUtils]: 22: Hoare triple {9491#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,674 INFO L290 TraceCheckUtils]: 23: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,674 INFO L290 TraceCheckUtils]: 24: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,674 INFO L290 TraceCheckUtils]: 25: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,674 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9420#true} {9491#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 2))} #72#return; {9491#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 2))} is VALID [2022-04-28 05:35:55,675 INFO L290 TraceCheckUtils]: 27: Hoare triple {9491#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,675 INFO L290 TraceCheckUtils]: 28: Hoare triple {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} assume !false; {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,676 INFO L272 TraceCheckUtils]: 29: Hoare triple {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L290 TraceCheckUtils]: 30: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L290 TraceCheckUtils]: 31: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L290 TraceCheckUtils]: 32: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {9420#true} {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} #74#return; {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,676 INFO L272 TraceCheckUtils]: 34: Hoare triple {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L290 TraceCheckUtils]: 35: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L290 TraceCheckUtils]: 36: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,676 INFO L290 TraceCheckUtils]: 37: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,677 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {9420#true} {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} #76#return; {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,677 INFO L272 TraceCheckUtils]: 39: Hoare triple {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,677 INFO L290 TraceCheckUtils]: 40: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,677 INFO L290 TraceCheckUtils]: 41: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,677 INFO L290 TraceCheckUtils]: 42: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,678 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {9420#true} {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} #78#return; {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,678 INFO L290 TraceCheckUtils]: 44: Hoare triple {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} assume !!(~a~0 != ~b~0); {9510#(and (<= main_~b~0 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,679 INFO L290 TraceCheckUtils]: 45: Hoare triple {9510#(and (<= main_~b~0 2) (<= 1 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; {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,679 INFO L290 TraceCheckUtils]: 46: Hoare triple {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} assume !false; {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,679 INFO L272 TraceCheckUtils]: 47: Hoare triple {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,679 INFO L290 TraceCheckUtils]: 48: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,680 INFO L290 TraceCheckUtils]: 50: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,680 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {9420#true} {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} #74#return; {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,680 INFO L272 TraceCheckUtils]: 52: Hoare triple {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,680 INFO L290 TraceCheckUtils]: 53: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,680 INFO L290 TraceCheckUtils]: 54: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,680 INFO L290 TraceCheckUtils]: 55: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,681 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {9420#true} {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} #76#return; {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,681 INFO L272 TraceCheckUtils]: 57: Hoare triple {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:55,681 INFO L290 TraceCheckUtils]: 58: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:55,681 INFO L290 TraceCheckUtils]: 59: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:55,681 INFO L290 TraceCheckUtils]: 60: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:55,682 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {9420#true} {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} #78#return; {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} is VALID [2022-04-28 05:35:55,682 INFO L290 TraceCheckUtils]: 62: Hoare triple {9565#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0))} assume !!(~a~0 != ~b~0); {9617#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 63: Hoare triple {9617#(and (<= (+ main_~b~0 main_~a~0) 2) (<= 1 main_~a~0) (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; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 64: Hoare triple {9421#false} assume !false; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L272 TraceCheckUtils]: 65: Hoare triple {9421#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 66: Hoare triple {9421#false} ~cond := #in~cond; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 67: Hoare triple {9421#false} assume !(0 == ~cond); {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 68: Hoare triple {9421#false} assume true; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {9421#false} {9421#false} #74#return; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L272 TraceCheckUtils]: 70: Hoare triple {9421#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 71: Hoare triple {9421#false} ~cond := #in~cond; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 72: Hoare triple {9421#false} assume !(0 == ~cond); {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L290 TraceCheckUtils]: 73: Hoare triple {9421#false} assume true; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {9421#false} {9421#false} #76#return; {9421#false} is VALID [2022-04-28 05:35:55,683 INFO L272 TraceCheckUtils]: 75: Hoare triple {9421#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9421#false} is VALID [2022-04-28 05:35:55,684 INFO L290 TraceCheckUtils]: 76: Hoare triple {9421#false} ~cond := #in~cond; {9421#false} is VALID [2022-04-28 05:35:55,684 INFO L290 TraceCheckUtils]: 77: Hoare triple {9421#false} assume 0 == ~cond; {9421#false} is VALID [2022-04-28 05:35:55,684 INFO L290 TraceCheckUtils]: 78: Hoare triple {9421#false} assume !false; {9421#false} is VALID [2022-04-28 05:35:55,684 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 80 proven. 6 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2022-04-28 05:35:55,684 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:35:56,657 INFO L290 TraceCheckUtils]: 78: Hoare triple {9421#false} assume !false; {9421#false} is VALID [2022-04-28 05:35:56,657 INFO L290 TraceCheckUtils]: 77: Hoare triple {9421#false} assume 0 == ~cond; {9421#false} is VALID [2022-04-28 05:35:56,657 INFO L290 TraceCheckUtils]: 76: Hoare triple {9421#false} ~cond := #in~cond; {9421#false} is VALID [2022-04-28 05:35:56,657 INFO L272 TraceCheckUtils]: 75: Hoare triple {9421#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9421#false} is VALID [2022-04-28 05:35:56,658 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {9420#true} {9421#false} #76#return; {9421#false} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 73: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 72: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 71: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L272 TraceCheckUtils]: 70: Hoare triple {9421#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {9420#true} {9421#false} #74#return; {9421#false} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 68: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 67: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 66: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L272 TraceCheckUtils]: 65: Hoare triple {9421#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 64: Hoare triple {9421#false} assume !false; {9421#false} is VALID [2022-04-28 05:35:56,658 INFO L290 TraceCheckUtils]: 63: Hoare triple {9711#(< 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; {9421#false} is VALID [2022-04-28 05:35:56,659 INFO L290 TraceCheckUtils]: 62: Hoare triple {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} assume !!(~a~0 != ~b~0); {9711#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:35:56,659 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {9420#true} {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #78#return; {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:56,659 INFO L290 TraceCheckUtils]: 60: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,659 INFO L290 TraceCheckUtils]: 59: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,659 INFO L290 TraceCheckUtils]: 58: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,659 INFO L272 TraceCheckUtils]: 57: Hoare triple {9715#(or (< main_~b~0 main_~a~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)); {9420#true} is VALID [2022-04-28 05:35:56,660 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {9420#true} {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #76#return; {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:56,660 INFO L290 TraceCheckUtils]: 55: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,660 INFO L290 TraceCheckUtils]: 54: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,660 INFO L290 TraceCheckUtils]: 53: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,660 INFO L272 TraceCheckUtils]: 52: Hoare triple {9715#(or (< main_~b~0 main_~a~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)); {9420#true} is VALID [2022-04-28 05:35:56,661 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {9420#true} {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #74#return; {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:56,661 INFO L290 TraceCheckUtils]: 50: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,661 INFO L290 TraceCheckUtils]: 49: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,661 INFO L290 TraceCheckUtils]: 48: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,661 INFO L272 TraceCheckUtils]: 47: Hoare triple {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,661 INFO L290 TraceCheckUtils]: 46: Hoare triple {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} assume !false; {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:56,662 INFO L290 TraceCheckUtils]: 45: Hoare triple {9767#(<= main_~b~0 (* main_~a~0 2))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {9715#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:35:56,662 INFO L290 TraceCheckUtils]: 44: Hoare triple {9767#(<= main_~b~0 (* main_~a~0 2))} assume !!(~a~0 != ~b~0); {9767#(<= main_~b~0 (* main_~a~0 2))} is VALID [2022-04-28 05:35:56,663 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {9420#true} {9767#(<= main_~b~0 (* main_~a~0 2))} #78#return; {9767#(<= main_~b~0 (* main_~a~0 2))} is VALID [2022-04-28 05:35:56,663 INFO L290 TraceCheckUtils]: 42: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L290 TraceCheckUtils]: 41: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L290 TraceCheckUtils]: 40: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L272 TraceCheckUtils]: 39: Hoare triple {9767#(<= main_~b~0 (* main_~a~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {9420#true} {9767#(<= main_~b~0 (* main_~a~0 2))} #76#return; {9767#(<= main_~b~0 (* main_~a~0 2))} is VALID [2022-04-28 05:35:56,663 INFO L290 TraceCheckUtils]: 37: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L290 TraceCheckUtils]: 36: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L290 TraceCheckUtils]: 35: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,663 INFO L272 TraceCheckUtils]: 34: Hoare triple {9767#(<= main_~b~0 (* main_~a~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,664 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {9420#true} {9767#(<= main_~b~0 (* main_~a~0 2))} #74#return; {9767#(<= main_~b~0 (* main_~a~0 2))} is VALID [2022-04-28 05:35:56,664 INFO L290 TraceCheckUtils]: 32: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,664 INFO L290 TraceCheckUtils]: 31: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,664 INFO L290 TraceCheckUtils]: 30: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,664 INFO L272 TraceCheckUtils]: 29: Hoare triple {9767#(<= main_~b~0 (* main_~a~0 2))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,664 INFO L290 TraceCheckUtils]: 28: Hoare triple {9767#(<= main_~b~0 (* main_~a~0 2))} assume !false; {9767#(<= main_~b~0 (* main_~a~0 2))} is VALID [2022-04-28 05:35:56,665 INFO L290 TraceCheckUtils]: 27: Hoare triple {9822#(<= (div (- main_~y~0) (- 2)) main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9767#(<= main_~b~0 (* main_~a~0 2))} is VALID [2022-04-28 05:35:56,665 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9420#true} {9822#(<= (div (- main_~y~0) (- 2)) main_~x~0)} #72#return; {9822#(<= (div (- main_~y~0) (- 2)) main_~x~0)} is VALID [2022-04-28 05:35:56,665 INFO L290 TraceCheckUtils]: 25: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,665 INFO L290 TraceCheckUtils]: 24: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,665 INFO L290 TraceCheckUtils]: 23: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,665 INFO L272 TraceCheckUtils]: 22: Hoare triple {9822#(<= (div (- main_~y~0) (- 2)) main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,666 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} {9841#(<= (div (* (- 1) main_~y~0) (- 2)) 1)} #70#return; {9822#(<= (div (- main_~y~0) (- 2)) main_~x~0)} is VALID [2022-04-28 05:35:56,666 INFO L290 TraceCheckUtils]: 20: Hoare triple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:56,666 INFO L290 TraceCheckUtils]: 19: Hoare triple {9851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:56,667 INFO L290 TraceCheckUtils]: 18: Hoare triple {9420#true} ~cond := #in~cond; {9851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:35:56,667 INFO L272 TraceCheckUtils]: 17: Hoare triple {9841#(<= (div (* (- 1) main_~y~0) (- 2)) 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,667 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} {9420#true} #68#return; {9841#(<= (div (* (- 1) main_~y~0) (- 2)) 1)} is VALID [2022-04-28 05:35:56,667 INFO L290 TraceCheckUtils]: 15: Hoare triple {9468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 14: Hoare triple {9851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {9468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 13: Hoare triple {9420#true} ~cond := #in~cond; {9851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:35:56,668 INFO L272 TraceCheckUtils]: 12: Hoare triple {9420#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 11: Hoare triple {9420#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9420#true} {9420#true} #66#return; {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {9420#true} assume !(0 == ~cond); {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 7: Hoare triple {9420#true} ~cond := #in~cond; {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L272 TraceCheckUtils]: 6: Hoare triple {9420#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L290 TraceCheckUtils]: 5: Hoare triple {9420#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; {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L272 TraceCheckUtils]: 4: Hoare triple {9420#true} call #t~ret6 := main(); {9420#true} is VALID [2022-04-28 05:35:56,668 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9420#true} {9420#true} #88#return; {9420#true} is VALID [2022-04-28 05:35:56,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {9420#true} assume true; {9420#true} is VALID [2022-04-28 05:35:56,669 INFO L290 TraceCheckUtils]: 1: Hoare triple {9420#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); {9420#true} is VALID [2022-04-28 05:35:56,669 INFO L272 TraceCheckUtils]: 0: Hoare triple {9420#true} call ULTIMATE.init(); {9420#true} is VALID [2022-04-28 05:35:56,669 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 30 proven. 12 refuted. 0 times theorem prover too weak. 124 trivial. 0 not checked. [2022-04-28 05:35:56,669 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:35:56,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1522991181] [2022-04-28 05:35:56,669 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:35:56,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [17346752] [2022-04-28 05:35:56,669 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [17346752] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:35:56,669 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:35:56,669 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 15 [2022-04-28 05:35:56,670 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:35:56,670 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1306901865] [2022-04-28 05:35:56,670 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1306901865] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:35:56,670 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:35:56,670 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:35:56,670 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1531839897] [2022-04-28 05:35:56,670 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:35:56,670 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 79 [2022-04-28 05:35:56,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:35:56,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 05:35:56,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:56,710 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:35:56,710 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:35:56,710 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:35:56,710 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=167, Unknown=0, NotChecked=0, Total=210 [2022-04-28 05:35:56,711 INFO L87 Difference]: Start difference. First operand 85 states and 100 transitions. Second operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 05:35:57,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:57,059 INFO L93 Difference]: Finished difference Result 93 states and 106 transitions. [2022-04-28 05:35:57,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:35:57,059 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 79 [2022-04-28 05:35:57,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:35:57,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 05:35:57,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 63 transitions. [2022-04-28 05:35:57,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 05:35:57,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 63 transitions. [2022-04-28 05:35:57,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 63 transitions. [2022-04-28 05:35:57,117 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-28 05:35:57,118 INFO L225 Difference]: With dead ends: 93 [2022-04-28 05:35:57,118 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 05:35:57,118 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 144 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=81, Invalid=261, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:35:57,119 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 6 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 99 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:35:57,119 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [7 Valid, 115 Invalid, 99 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:35:57,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 05:35:57,120 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 05:35:57,120 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:35:57,120 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 05:35:57,120 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 05:35:57,120 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 05:35:57,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:57,120 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 05:35:57,120 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 05:35:57,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:57,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:57,120 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 05:35:57,120 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 05:35:57,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:35:57,120 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 05:35:57,120 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 05:35:57,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:57,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:35:57,121 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:35:57,121 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:35:57,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 05:35:57,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 05:35:57,121 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 79 [2022-04-28 05:35:57,121 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:35:57,121 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 05:35:57,121 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 05:35:57,121 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-28 05:35:57,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:35:57,121 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 05:35:57,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:35:57,123 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 05:35:57,141 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 05:35:57,336 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-28 05:35:57,338 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 05:35:59,025 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 4) no Hoare annotation was computed. [2022-04-28 05:35:59,025 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 4) no Hoare annotation was computed. [2022-04-28 05:35:59,025 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 4) no Hoare annotation was computed. [2022-04-28 05:35:59,025 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 7 9) the Hoare annotation is: true [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L8(line 8) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L8-2(lines 7 9) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 7 9) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L35-2(lines 35 52) the Hoare annotation is: (let ((.cse4 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (let ((.cse0 (= main_~s~0 1)) (.cse1 (= main_~a~0 .cse4)) (.cse2 (<= 1 main_~y~0)) (.cse3 (= main_~p~0 1))) (or (and (= main_~b~0 main_~a~0) (<= 1 main_~x~0) .cse0 .cse1 (= main_~b~0 main_~y~0) (= main_~q~0 0) .cse2 .cse3) (and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~b~0 .cse4) .cse0 .cse1 (= (+ main_~q~0 1) 0) .cse2 (= main_~a~0 main_~x~0) (<= main_~x~0 2) .cse3)))) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 2) (<= main_~x~0 2)) [2022-04-28 05:35:59,026 INFO L902 garLoopResultBuilder]: At program point mainEXIT(lines 18 59) the Hoare annotation is: true [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L56(line 56) the Hoare annotation is: (let ((.cse1 (<= 1 main_~x~0)) (.cse2 (= main_~s~0 1)) (.cse3 (<= 1 main_~y~0))) (or (let ((.cse0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~b~0 .cse0) .cse1 .cse2 (= main_~a~0 .cse0) (= (+ main_~q~0 1) 0) .cse3 (<= main_~x~0 2))) (and .cse1 .cse2 (= main_~b~0 main_~y~0) (= main_~q~0 0) .cse3))) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (let ((.cse4 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (let ((.cse0 (= main_~s~0 1)) (.cse1 (= main_~a~0 .cse4)) (.cse2 (<= 1 main_~y~0)) (.cse3 (= main_~p~0 1))) (or (and (= main_~b~0 main_~a~0) (<= 1 main_~x~0) .cse0 .cse1 (= main_~b~0 main_~y~0) (= main_~q~0 0) .cse2 .cse3) (and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~b~0 .cse4) .cse0 .cse1 (= (+ main_~q~0 1) 0) .cse2 (= main_~a~0 main_~x~0) (<= main_~x~0 2) .cse3)))) [2022-04-28 05:35:59,026 INFO L902 garLoopResultBuilder]: At program point mainFINAL(lines 18 59) the Hoare annotation is: true [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L38(lines 35 52) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 2)) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (.cse3 (<= 1 main_~a~0)) (.cse6 (= main_~q~0 0)) (.cse7 (<= 1 main_~y~0)) (.cse4 (= main_~a~0 main_~x~0)) (.cse8 (<= main_~x~0 2)) (.cse5 (= main_~p~0 1))) (or (and (= main_~y~0 (+ main_~b~0 main_~x~0)) .cse0 .cse1 .cse2 .cse3 (= (+ main_~q~0 1) 0) (< 0 main_~b~0) .cse4 .cse5) (and (<= (+ main_~b~0 main_~a~0) 2) (= (+ main_~r~0 1) 0) .cse1 .cse2 (< 0 main_~a~0) .cse6 (<= 1 main_~b~0) .cse7 .cse8 .cse5) (and .cse0 .cse1 .cse2 .cse3 (= main_~b~0 main_~y~0) .cse6 .cse7 .cse4 .cse8 .cse5))) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L36(line 36) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 2)) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (.cse3 (<= 1 main_~a~0)) (.cse6 (= main_~q~0 0)) (.cse7 (<= 1 main_~y~0)) (.cse4 (= main_~a~0 main_~x~0)) (.cse8 (<= main_~x~0 2)) (.cse5 (= main_~p~0 1))) (or (and (= main_~y~0 (+ main_~b~0 main_~x~0)) .cse0 .cse1 .cse2 .cse3 (= (+ main_~q~0 1) 0) (< 0 main_~b~0) .cse4 .cse5) (and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) .cse1 (< 0 main_~a~0) .cse6 (<= 1 main_~b~0) .cse7 (< main_~b~0 2) .cse8 .cse5) (and .cse0 .cse1 .cse2 .cse3 (= main_~b~0 main_~y~0) .cse6 .cse7 .cse4 .cse8 .cse5))) [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L36-1(line 36) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 2)) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (.cse3 (<= 1 main_~a~0)) (.cse6 (= main_~q~0 0)) (.cse7 (<= 1 main_~y~0)) (.cse4 (= main_~a~0 main_~x~0)) (.cse8 (<= main_~x~0 2)) (.cse5 (= main_~p~0 1))) (or (and (= main_~y~0 (+ main_~b~0 main_~x~0)) .cse0 .cse1 .cse2 .cse3 (= (+ main_~q~0 1) 0) (< 0 main_~b~0) .cse4 .cse5) (and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) .cse1 (< 0 main_~a~0) .cse6 (<= 1 main_~b~0) .cse7 (< main_~b~0 2) .cse8 .cse5) (and .cse0 .cse1 .cse2 .cse3 (= main_~b~0 main_~y~0) .cse6 .cse7 .cse4 .cse8 .cse5))) [2022-04-28 05:35:59,026 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 18 59) the Hoare annotation is: true [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: (and (<= 1 main_~x~0) (<= main_~y~0 2) (<= 1 main_~y~0) (<= main_~x~0 2)) [2022-04-28 05:35:59,026 INFO L902 garLoopResultBuilder]: At program point L57(line 57) the Hoare annotation is: true [2022-04-28 05:35:59,026 INFO L895 garLoopResultBuilder]: At program point L24(line 24) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 2)) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L24-1(line 24) the Hoare annotation is: (and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2)) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse0 (<= 1 main_~x~0)) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~b~0 main_~y~0)) (.cse3 (= main_~q~0 0)) (.cse4 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse5 (= main_~p~0 1))) (or (and (= main_~b~0 main_~a~0) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5) (let ((.cse6 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~b~0 .cse6) .cse1 (= main_~a~0 .cse6) (= (+ main_~q~0 1) 0) .cse4 .cse7 (<= main_~x~0 2) .cse5)) (and (= main_~r~0 0) .cse0 .cse1 .cse2 .cse3 .cse4 .cse7 .cse5))) [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point L22(line 22) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L22-1(line 22) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 2)) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L43(lines 43 51) the Hoare annotation is: (and (<= main_~y~0 2) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= 1 main_~a~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (not (= main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1)) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L43-2(lines 35 52) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 2)) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (.cse3 (<= 1 main_~a~0)) (.cse6 (= main_~q~0 0)) (.cse7 (<= 1 main_~y~0)) (.cse4 (= main_~a~0 main_~x~0)) (.cse8 (<= main_~x~0 2)) (.cse5 (= main_~p~0 1))) (or (and (= main_~y~0 (+ main_~b~0 main_~x~0)) .cse0 .cse1 .cse2 .cse3 (= (+ main_~q~0 1) 0) (< 0 main_~b~0) .cse4 .cse5) (and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ main_~r~0 1) 0) .cse1 (< 0 main_~a~0) .cse6 (<= 1 main_~b~0) .cse7 (< main_~b~0 2) .cse8 .cse5) (and .cse0 .cse1 .cse2 .cse3 (= main_~b~0 main_~y~0) .cse6 .cse7 .cse4 .cse8 .cse5))) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L37(line 37) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 2)) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (.cse3 (<= 1 main_~a~0)) (.cse6 (= main_~q~0 0)) (.cse7 (<= 1 main_~y~0)) (.cse4 (= main_~a~0 main_~x~0)) (.cse8 (<= main_~x~0 2)) (.cse5 (= main_~p~0 1))) (or (and (= main_~y~0 (+ main_~b~0 main_~x~0)) .cse0 .cse1 .cse2 .cse3 (= (+ main_~q~0 1) 0) (< 0 main_~b~0) .cse4 .cse5) (and (<= (+ main_~b~0 main_~a~0) 2) (= (+ main_~r~0 1) 0) .cse1 .cse2 (< 0 main_~a~0) .cse6 (<= 1 main_~b~0) .cse7 .cse8 .cse5) (and .cse0 .cse1 .cse2 .cse3 (= main_~b~0 main_~y~0) .cse6 .cse7 .cse4 .cse8 .cse5))) [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 10 16) the Hoare annotation is: true [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L12(lines 12 13) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L11(lines 11 14) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 10 16) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 05:35:59,027 INFO L895 garLoopResultBuilder]: At program point L11-2(lines 10 16) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 05:35:59,028 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 13) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 05:35:59,030 INFO L356 BasicCegarLoop]: Path program histogram: [6, 4, 4, 2, 2, 2, 2, 2, 2] [2022-04-28 05:35:59,031 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 05:35:59,033 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 05:35:59,037 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 05:35:59,067 INFO L163 areAnnotationChecker]: CFG has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 05:35:59,075 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 05:35:59 BoogieIcfgContainer [2022-04-28 05:35:59,075 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 05:35:59,076 INFO L158 Benchmark]: Toolchain (without parser) took 93739.22ms. Allocated memory was 177.2MB in the beginning and 212.9MB in the end (delta: 35.7MB). Free memory was 132.0MB in the beginning and 98.9MB in the end (delta: 33.1MB). Peak memory consumption was 102.8MB. Max. memory is 8.0GB. [2022-04-28 05:35:59,076 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 177.2MB. Free memory was 148.3MB in the beginning and 148.2MB in the end (delta: 80.3kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 05:35:59,076 INFO L158 Benchmark]: CACSL2BoogieTranslator took 216.74ms. Allocated memory is still 177.2MB. Free memory was 131.9MB in the beginning and 155.6MB in the end (delta: -23.8MB). Peak memory consumption was 14.5MB. Max. memory is 8.0GB. [2022-04-28 05:35:59,077 INFO L158 Benchmark]: Boogie Preprocessor took 28.16ms. Allocated memory is still 177.2MB. Free memory was 155.6MB in the beginning and 154.1MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 05:35:59,077 INFO L158 Benchmark]: RCFGBuilder took 257.23ms. Allocated memory is still 177.2MB. Free memory was 154.1MB in the beginning and 142.3MB in the end (delta: 11.8MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-28 05:35:59,077 INFO L158 Benchmark]: TraceAbstraction took 93231.41ms. Allocated memory was 177.2MB in the beginning and 212.9MB in the end (delta: 35.7MB). Free memory was 142.0MB in the beginning and 98.9MB in the end (delta: 43.1MB). Peak memory consumption was 111.3MB. Max. memory is 8.0GB. [2022-04-28 05:35:59,078 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12ms. Allocated memory is still 177.2MB. Free memory was 148.3MB in the beginning and 148.2MB in the end (delta: 80.3kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 216.74ms. Allocated memory is still 177.2MB. Free memory was 131.9MB in the beginning and 155.6MB in the end (delta: -23.8MB). Peak memory consumption was 14.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 28.16ms. Allocated memory is still 177.2MB. Free memory was 155.6MB in the beginning and 154.1MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 257.23ms. Allocated memory is still 177.2MB. Free memory was 154.1MB in the beginning and 142.3MB in the end (delta: 11.8MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 93231.41ms. Allocated memory was 177.2MB in the beginning and 212.9MB in the end (delta: 35.7MB). Free memory was 142.0MB in the beginning and 98.9MB in the end (delta: 43.1MB). Peak memory consumption was 111.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 13]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 40 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 93.1s, OverallIterations: 13, TraceHistogramMax: 9, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 6.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 1.7s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 233 SdHoareTripleChecker+Valid, 1.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 159 mSDsluCounter, 1917 SdHoareTripleChecker+Invalid, 1.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1399 mSDsCounter, 109 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1309 IncrementalHoareTripleChecker+Invalid, 1418 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 109 mSolverCounterUnsat, 518 mSDtfsCounter, 1309 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1176 GetRequests, 1051 SyntacticMatches, 6 SemanticMatches, 119 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 151 ImplicationChecksByTransitivity, 0.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=131occurred in iteration=9, InterpolantAutomatonStates: 92, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 1.2s AutomataMinimizationTime, 13 MinimizatonAttempts, 12 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 37 LocationsWithAnnotation, 409 PreInvPairs, 510 NumberOfFragments, 1034 HoareAnnotationTreeSize, 409 FomulaSimplifications, 252 FormulaSimplificationTreeSizeReduction, 0.3s HoareSimplificationTime, 37 FomulaSimplificationsInter, 852 FormulaSimplificationTreeSizeReductionInter, 1.3s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 35]: Loop Invariant Derived loop invariant: (((((((((y == b + x && y <= 2) && s == 1) && a == y * r + p * x) && 1 <= a) && q + 1 == 0) && 0 < b) && a == x) && p == 1) || (((((((((a + y == x && r + 1 == 0) && s == 1) && 0 < a) && q == 0) && 1 <= b) && 1 <= y) && b < 2) && x <= 2) && p == 1)) || (((((((((y <= 2 && s == 1) && a == y * r + p * x) && 1 <= a) && b == y) && q == 0) && 1 <= y) && a == x) && x <= 2) && p == 1) - ProcedureContractResult [Line: 7]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: !(\old(cond) == 0) && cond == \old(cond) - ProcedureContractResult [Line: 18]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 10]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: \old(cond) == cond || !(1 <= \old(cond)) RESULT: Ultimate proved your program to be correct! [2022-04-28 05:35:59,103 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...