/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/egcd2-ll_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:38:10,901 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:38:10,902 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:38:10,971 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:38:10,971 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:38:10,973 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:38:10,979 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:38:10,984 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:38:10,985 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:38:10,986 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:38:10,986 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:38:10,987 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:38:10,987 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:38:10,988 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:38:10,989 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:38:10,990 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:38:10,990 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:38:10,996 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:38:11,000 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:38:11,001 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:38:11,002 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:38:11,005 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:38:11,006 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:38:11,007 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:38:11,010 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:38:11,012 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:38:11,012 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:38:11,013 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:38:11,013 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:38:11,014 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:38:11,014 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:38:11,014 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:38:11,015 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:38:11,015 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:38:11,016 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:38:11,017 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:38:11,017 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:38:11,017 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:38:11,018 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:38:11,018 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:38:11,018 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:38:11,025 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:38:11,026 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:38:11,037 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:38:11,038 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:38:11,039 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:38:11,039 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:38:11,039 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:38:11,039 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:38:11,040 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:38:11,040 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:38:11,040 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:38:11,041 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:38:11,041 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:38:11,042 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:38:11,042 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:38:11,043 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:38:11,237 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:38:11,256 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:38:11,258 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:38:11,259 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:38:11,259 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:38:11,260 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound1.c [2022-04-28 05:38:11,310 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/699b1ecaf/938e96b352a54bdd80cc89fee368b4f4/FLAGd3d5ed822 [2022-04-28 05:38:11,693 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:38:11,694 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound1.c [2022-04-28 05:38:11,700 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/699b1ecaf/938e96b352a54bdd80cc89fee368b4f4/FLAGd3d5ed822 [2022-04-28 05:38:12,107 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/699b1ecaf/938e96b352a54bdd80cc89fee368b4f4 [2022-04-28 05:38:12,109 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:38:12,112 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:38:12,113 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:38:12,113 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:38:12,115 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:38:12,116 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,116 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c4c280c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12, skipping insertion in model container [2022-04-28 05:38:12,117 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,122 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:38:12,137 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:38:12,268 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/egcd2-ll_valuebound1.c[490,503] [2022-04-28 05:38:12,293 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:38:12,299 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:38:12,309 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/egcd2-ll_valuebound1.c[490,503] [2022-04-28 05:38:12,320 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:38:12,331 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:38:12,331 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12 WrapperNode [2022-04-28 05:38:12,331 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:38:12,332 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:38:12,332 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:38:12,332 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:38:12,341 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,341 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,346 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,346 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,352 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,355 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,356 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,358 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:38:12,359 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:38:12,359 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:38:12,359 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:38:12,359 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (1/1) ... [2022-04-28 05:38:12,365 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:38:12,380 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:38:12,396 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:38:12,397 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:38:12,421 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:38:12,421 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:38:12,421 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:38:12,421 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:38:12,422 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:38:12,422 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:38:12,422 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:38:12,423 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:38:12,423 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:38:12,423 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:38:12,423 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:38:12,423 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:38:12,423 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:38:12,472 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:38:12,473 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:38:12,693 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:38:12,699 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:38:12,699 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-28 05:38:12,700 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:38:12 BoogieIcfgContainer [2022-04-28 05:38:12,700 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:38:12,702 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:38:12,702 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:38:12,704 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:38:12,705 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:38:12" (1/3) ... [2022-04-28 05:38:12,705 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3d6c1d71 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:38:12, skipping insertion in model container [2022-04-28 05:38:12,705 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:38:12" (2/3) ... [2022-04-28 05:38:12,706 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3d6c1d71 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:38:12, skipping insertion in model container [2022-04-28 05:38:12,706 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:38:12" (3/3) ... [2022-04-28 05:38:12,707 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound1.c [2022-04-28 05:38:12,722 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:38:12,722 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:38:12,773 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:38:12,782 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@5c6d8280, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5960a9d5 [2022-04-28 05:38:12,782 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:38:12,790 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-28 05:38:12,797 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 05:38:12,797 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:38:12,798 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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:38:12,799 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:38:12,806 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:38:12,806 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 1 times [2022-04-28 05:38:12,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:12,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1213153170] [2022-04-28 05:38:12,828 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:38:12,829 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 2 times [2022-04-28 05:38:12,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:38:12,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [738773567] [2022-04-28 05:38:12,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:38:12,833 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:38:12,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,025 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:38:13,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,060 INFO L290 TraceCheckUtils]: 0: Hoare triple {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:38:13,060 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:38:13,061 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-28 05:38:13,061 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:38:13,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,081 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,082 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,082 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-28 05:38:13,082 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 05:38:13,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,092 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,093 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-28 05:38:13,093 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 05:38:13,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,103 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,104 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,104 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-28 05:38:13,105 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 05:38:13,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,119 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,122 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,122 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,122 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-28 05:38:13,123 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-28 05:38:13,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,129 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,130 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,130 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-28 05:38:13,131 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-28 05:38:13,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,140 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,142 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,142 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-28 05:38:13,144 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:38:13,144 INFO L290 TraceCheckUtils]: 1: Hoare triple {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:38:13,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:38:13,145 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-28 05:38:13,145 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-28 05:38:13,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-28 05:38:13,145 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:38:13,146 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-28 05:38:13,149 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-28 05:38:13,149 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:38:13,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,150 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,151 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,151 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-28 05:38:13,152 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:38:13,152 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,152 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,153 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,159 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-28 05:38:13,159 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:38:13,160 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,161 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,161 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,161 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-28 05:38:13,162 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {44#false} is VALID [2022-04-28 05:38:13,162 INFO L272 TraceCheckUtils]: 28: Hoare triple {44#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-28 05:38:13,162 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,165 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,165 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-28 05:38:13,166 INFO L272 TraceCheckUtils]: 33: Hoare triple {44#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-28 05:38:13,166 INFO L290 TraceCheckUtils]: 34: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:38:13,167 INFO L290 TraceCheckUtils]: 35: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:38:13,167 INFO L290 TraceCheckUtils]: 36: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:38:13,167 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-28 05:38:13,168 INFO L290 TraceCheckUtils]: 38: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-28 05:38:13,169 INFO L272 TraceCheckUtils]: 39: Hoare triple {44#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {44#false} is VALID [2022-04-28 05:38:13,172 INFO L290 TraceCheckUtils]: 40: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:38:13,172 INFO L290 TraceCheckUtils]: 41: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:38:13,175 INFO L290 TraceCheckUtils]: 42: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:38:13,176 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:38:13,176 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:38:13,176 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [738773567] [2022-04-28 05:38:13,177 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [738773567] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:38:13,177 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:38:13,177 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:38:13,180 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:38:13,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1213153170] [2022-04-28 05:38:13,180 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1213153170] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:38:13,180 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:38:13,180 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:38:13,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1459101835] [2022-04-28 05:38:13,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:38:13,187 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-28 05:38:13,189 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:38:13,192 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:38:13,239 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:13,239 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:38:13,239 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:13,265 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:38:13,265 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:38:13,268 INFO L87 Difference]: Start difference. First operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:38:13,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:13,476 INFO L93 Difference]: Finished difference Result 73 states and 118 transitions. [2022-04-28 05:38:13,476 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:38:13,477 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-28 05:38:13,477 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:38:13,478 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:38:13,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-28 05:38:13,498 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:38:13,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-28 05:38:13,503 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 118 transitions. [2022-04-28 05:38:13,658 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:13,665 INFO L225 Difference]: With dead ends: 73 [2022-04-28 05:38:13,666 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 05:38:13,668 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 21 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:38:13,671 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:38:13,671 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 42 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:38:13,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 05:38:13,697 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-28 05:38:13,697 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:38:13,698 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:13,699 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:13,699 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:13,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:13,704 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-28 05:38:13,704 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 05:38:13,704 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:13,705 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:13,705 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-28 05:38:13,706 INFO L87 Difference]: Start difference. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-28 05:38:13,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:13,709 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-28 05:38:13,709 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 05:38:13,710 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:13,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:13,710 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:38:13,710 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:38:13,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:13,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 46 transitions. [2022-04-28 05:38:13,714 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 46 transitions. Word has length 43 [2022-04-28 05:38:13,715 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:38:13,715 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 46 transitions. [2022-04-28 05:38:13,715 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, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:38:13,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 46 transitions. [2022-04-28 05:38:13,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:13,767 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 05:38:13,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-28 05:38:13,768 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:38:13,769 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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:38:13,769 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:38:13,769 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:38:13,770 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:38:13,770 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 1 times [2022-04-28 05:38:13,770 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:13,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1853279185] [2022-04-28 05:38:13,771 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:38:13,771 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 2 times [2022-04-28 05:38:13,771 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:38:13,771 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1658650510] [2022-04-28 05:38:13,771 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:38:13,771 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:38:13,796 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:38:13,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [343508147] [2022-04-28 05:38:13,796 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:38:13,797 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:38:13,797 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:38:13,799 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:38:13,799 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:38:13,856 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:38:13,856 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:38:13,858 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:38:13,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:13,882 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:38:14,133 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-28 05:38:14,134 INFO L290 TraceCheckUtils]: 1: Hoare triple {361#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {361#true} is VALID [2022-04-28 05:38:14,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,134 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-28 05:38:14,134 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-28 05:38:14,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {361#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {361#true} is VALID [2022-04-28 05:38:14,135 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,135 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,135 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,135 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,135 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-28 05:38:14,136 INFO L290 TraceCheckUtils]: 11: Hoare triple {361#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {361#true} is VALID [2022-04-28 05:38:14,136 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,136 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,136 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,137 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-28 05:38:14,137 INFO L272 TraceCheckUtils]: 17: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,137 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,137 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,137 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,137 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-28 05:38:14,138 INFO L272 TraceCheckUtils]: 22: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,138 INFO L290 TraceCheckUtils]: 23: Hoare triple {361#true} ~cond := #in~cond; {435#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:38:14,139 INFO L290 TraceCheckUtils]: 24: Hoare triple {435#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:14,139 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:14,140 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {439#(not (= |assume_abort_if_not_#in~cond| 0))} {361#true} #85#return; {446#(<= 1 main_~y~0)} is VALID [2022-04-28 05:38:14,141 INFO L290 TraceCheckUtils]: 27: Hoare triple {446#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,141 INFO L272 TraceCheckUtils]: 28: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,141 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,141 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,141 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,142 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #87#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,142 INFO L272 TraceCheckUtils]: 33: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,143 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,143 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,143 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,144 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #89#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,144 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,145 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-28 05:38:14,145 INFO L272 TraceCheckUtils]: 40: Hoare triple {362#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {362#false} is VALID [2022-04-28 05:38:14,145 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-28 05:38:14,145 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-28 05:38:14,145 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-28 05:38:14,146 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-28 05:38:14,146 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:38:14,481 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-28 05:38:14,481 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-28 05:38:14,482 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-28 05:38:14,482 INFO L272 TraceCheckUtils]: 40: Hoare triple {362#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {362#false} is VALID [2022-04-28 05:38:14,483 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-28 05:38:14,483 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,484 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #89#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,484 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,485 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,485 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,485 INFO L272 TraceCheckUtils]: 33: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,489 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #87#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,489 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,489 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,489 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,489 INFO L272 TraceCheckUtils]: 28: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,495 INFO L290 TraceCheckUtils]: 27: Hoare triple {446#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:38:14,496 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {439#(not (= |assume_abort_if_not_#in~cond| 0))} {361#true} #85#return; {446#(<= 1 main_~y~0)} is VALID [2022-04-28 05:38:14,497 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:14,497 INFO L290 TraceCheckUtils]: 24: Hoare triple {559#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:14,498 INFO L290 TraceCheckUtils]: 23: Hoare triple {361#true} ~cond := #in~cond; {559#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:38:14,498 INFO L272 TraceCheckUtils]: 22: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,498 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-28 05:38:14,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,498 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,499 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,499 INFO L272 TraceCheckUtils]: 17: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,499 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-28 05:38:14,499 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,500 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,500 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,500 INFO L290 TraceCheckUtils]: 11: Hoare triple {361#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {361#true} is VALID [2022-04-28 05:38:14,500 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-28 05:38:14,500 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,500 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:38:14,501 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:38:14,501 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:38:14,501 INFO L290 TraceCheckUtils]: 5: Hoare triple {361#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {361#true} is VALID [2022-04-28 05:38:14,501 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-28 05:38:14,501 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-28 05:38:14,502 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:38:14,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {361#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {361#true} is VALID [2022-04-28 05:38:14,502 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-28 05:38:14,502 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-28 05:38:14,503 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:38:14,503 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1658650510] [2022-04-28 05:38:14,503 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:38:14,503 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [343508147] [2022-04-28 05:38:14,503 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [343508147] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:38:14,503 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:38:14,504 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-28 05:38:14,504 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:38:14,505 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1853279185] [2022-04-28 05:38:14,505 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1853279185] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:38:14,505 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:38:14,505 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:38:14,505 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1708720745] [2022-04-28 05:38:14,505 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:38:14,506 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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 44 [2022-04-28 05:38:14,506 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:38:14,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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:38:14,535 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:38:14,535 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:38:14,535 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:14,536 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:38:14,536 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:38:14,536 INFO L87 Difference]: Start difference. First operand 35 states and 46 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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:38:14,891 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:14,891 INFO L93 Difference]: Finished difference Result 52 states and 69 transitions. [2022-04-28 05:38:14,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:38:14,891 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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 44 [2022-04-28 05:38:14,892 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:38:14,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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:38:14,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:38:14,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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:38:14,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:38:14,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-28 05:38:14,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:14,960 INFO L225 Difference]: With dead ends: 52 [2022-04-28 05:38:14,960 INFO L226 Difference]: Without dead ends: 44 [2022-04-28 05:38:14,960 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 81 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:38:14,961 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 19 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:38:14,962 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [24 Valid, 128 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:38:14,963 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-28 05:38:14,983 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-28 05:38:14,984 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:38:14,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:14,984 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:14,985 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:14,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:14,988 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-28 05:38:14,988 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-28 05:38:14,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:14,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:14,990 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-28 05:38:14,990 INFO L87 Difference]: Start difference. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-28 05:38:14,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:14,993 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-28 05:38:14,993 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-28 05:38:14,994 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:14,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:14,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:38:14,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:38:14,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:38:14,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-28 05:38:14,997 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 44 [2022-04-28 05:38:14,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:38:14,998 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-28 05:38:14,998 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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:38:14,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 48 transitions. [2022-04-28 05:38:15,046 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:38:15,046 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-28 05:38:15,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-28 05:38:15,047 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:38:15,047 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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:38:15,073 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:38:15,270 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:38:15,270 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:38:15,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:38:15,271 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 1 times [2022-04-28 05:38:15,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:15,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [317398717] [2022-04-28 05:38:15,271 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:38:15,271 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 2 times [2022-04-28 05:38:15,272 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:38:15,272 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [581365292] [2022-04-28 05:38:15,272 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:38:15,272 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:38:15,292 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:38:15,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2089197963] [2022-04-28 05:38:15,293 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:38:15,293 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:38:15,293 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:38:15,294 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:38:15,303 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:38:15,354 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:38:15,354 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:38:15,355 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:38:15,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:15,367 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:38:15,518 INFO L272 TraceCheckUtils]: 0: Hoare triple {901#true} call ULTIMATE.init(); {901#true} is VALID [2022-04-28 05:38:15,518 INFO L290 TraceCheckUtils]: 1: Hoare triple {901#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {901#true} is VALID [2022-04-28 05:38:15,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,519 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {901#true} {901#true} #103#return; {901#true} is VALID [2022-04-28 05:38:15,519 INFO L272 TraceCheckUtils]: 4: Hoare triple {901#true} call #t~ret6 := main(); {901#true} is VALID [2022-04-28 05:38:15,519 INFO L290 TraceCheckUtils]: 5: Hoare triple {901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {901#true} is VALID [2022-04-28 05:38:15,519 INFO L272 TraceCheckUtils]: 6: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {901#true} is VALID [2022-04-28 05:38:15,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:38:15,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:38:15,520 INFO L290 TraceCheckUtils]: 9: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,520 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {901#true} {901#true} #79#return; {901#true} is VALID [2022-04-28 05:38:15,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {901#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {901#true} is VALID [2022-04-28 05:38:15,520 INFO L272 TraceCheckUtils]: 12: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {901#true} is VALID [2022-04-28 05:38:15,520 INFO L290 TraceCheckUtils]: 13: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:38:15,520 INFO L290 TraceCheckUtils]: 14: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:38:15,520 INFO L290 TraceCheckUtils]: 15: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,521 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {901#true} {901#true} #81#return; {901#true} is VALID [2022-04-28 05:38:15,521 INFO L272 TraceCheckUtils]: 17: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {901#true} is VALID [2022-04-28 05:38:15,521 INFO L290 TraceCheckUtils]: 18: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:38:15,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:38:15,521 INFO L290 TraceCheckUtils]: 20: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,521 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {901#true} {901#true} #83#return; {901#true} is VALID [2022-04-28 05:38:15,521 INFO L272 TraceCheckUtils]: 22: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {901#true} is VALID [2022-04-28 05:38:15,522 INFO L290 TraceCheckUtils]: 23: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:38:15,522 INFO L290 TraceCheckUtils]: 24: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:38:15,522 INFO L290 TraceCheckUtils]: 25: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,522 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {901#true} {901#true} #85#return; {901#true} is VALID [2022-04-28 05:38:15,522 INFO L290 TraceCheckUtils]: 27: Hoare triple {901#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {901#true} is VALID [2022-04-28 05:38:15,522 INFO L272 TraceCheckUtils]: 28: Hoare triple {901#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {901#true} is VALID [2022-04-28 05:38:15,522 INFO L290 TraceCheckUtils]: 29: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:38:15,523 INFO L290 TraceCheckUtils]: 30: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:38:15,523 INFO L290 TraceCheckUtils]: 31: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,523 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {901#true} {901#true} #87#return; {901#true} is VALID [2022-04-28 05:38:15,523 INFO L272 TraceCheckUtils]: 33: Hoare triple {901#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {901#true} is VALID [2022-04-28 05:38:15,523 INFO L290 TraceCheckUtils]: 34: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:38:15,523 INFO L290 TraceCheckUtils]: 35: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:38:15,524 INFO L290 TraceCheckUtils]: 36: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:38:15,524 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {901#true} {901#true} #89#return; {901#true} is VALID [2022-04-28 05:38:15,524 INFO L290 TraceCheckUtils]: 38: Hoare triple {901#true} assume !false; {901#true} is VALID [2022-04-28 05:38:15,526 INFO L290 TraceCheckUtils]: 39: Hoare triple {901#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:38:15,526 INFO L290 TraceCheckUtils]: 40: Hoare triple {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} assume !false; {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:38:15,527 INFO L272 TraceCheckUtils]: 41: Hoare triple {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1030#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:38:15,528 INFO L290 TraceCheckUtils]: 42: Hoare triple {1030#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1034#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:38:15,528 INFO L290 TraceCheckUtils]: 43: Hoare triple {1034#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {902#false} is VALID [2022-04-28 05:38:15,528 INFO L290 TraceCheckUtils]: 44: Hoare triple {902#false} assume !false; {902#false} is VALID [2022-04-28 05:38:15,528 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:38:15,529 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:38:15,529 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:38:15,529 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [581365292] [2022-04-28 05:38:15,529 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:38:15,529 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2089197963] [2022-04-28 05:38:15,529 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2089197963] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:38:15,529 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:38:15,529 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:38:15,530 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:38:15,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [317398717] [2022-04-28 05:38:15,530 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [317398717] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:38:15,530 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:38:15,530 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:38:15,530 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1000520561] [2022-04-28 05:38:15,530 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:38:15,531 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-28 05:38:15,531 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:38:15,531 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:38:15,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:15,555 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:38:15,555 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:15,555 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:38:15,556 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:38:15,556 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:38:15,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:15,794 INFO L93 Difference]: Finished difference Result 50 states and 65 transitions. [2022-04-28 05:38:15,794 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:38:15,794 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-28 05:38:15,794 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:38:15,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:38:15,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-28 05:38:15,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:38:15,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-28 05:38:15,799 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-28 05:38:15,850 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:38:15,852 INFO L225 Difference]: With dead ends: 50 [2022-04-28 05:38:15,852 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 05:38:15,852 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 41 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:38:15,853 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 6 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:38:15,853 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 154 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:38:15,854 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 05:38:15,881 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 43. [2022-04-28 05:38:15,881 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:38:15,882 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:38:15,882 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:38:15,883 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:38:15,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:15,886 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-28 05:38:15,886 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-28 05:38:15,886 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:15,886 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:15,887 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 48 states. [2022-04-28 05:38:15,887 INFO L87 Difference]: Start difference. First operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 48 states. [2022-04-28 05:38:15,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:15,890 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-28 05:38:15,890 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-28 05:38:15,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:15,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:15,890 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:38:15,891 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:38:15,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:38:15,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 54 transitions. [2022-04-28 05:38:15,893 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 54 transitions. Word has length 45 [2022-04-28 05:38:15,893 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:38:15,893 INFO L495 AbstractCegarLoop]: Abstraction has 43 states and 54 transitions. [2022-04-28 05:38:15,893 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:38:15,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 54 transitions. [2022-04-28 05:38:15,971 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:38:15,971 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-28 05:38:15,973 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-28 05:38:15,974 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:38:15,974 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:38:15,999 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:38:16,187 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:38:16,188 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:38:16,188 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:38:16,188 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 1 times [2022-04-28 05:38:16,188 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:16,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1496175674] [2022-04-28 05:38:16,189 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:38:16,189 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 2 times [2022-04-28 05:38:16,189 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:38:16,189 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589019456] [2022-04-28 05:38:16,189 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:38:16,190 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:38:16,208 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:38:16,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1677160524] [2022-04-28 05:38:16,208 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:38:16,208 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:38:16,208 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:38:16,211 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:38:16,212 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:38:16,268 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:38:16,268 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:38:16,270 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:38:16,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:16,287 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:38:17,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {1324#true} call ULTIMATE.init(); {1324#true} is VALID [2022-04-28 05:38:17,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {1324#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1324#true} is VALID [2022-04-28 05:38:17,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:38:17,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1324#true} {1324#true} #103#return; {1324#true} is VALID [2022-04-28 05:38:17,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {1324#true} call #t~ret6 := main(); {1324#true} is VALID [2022-04-28 05:38:17,065 INFO L290 TraceCheckUtils]: 5: Hoare triple {1324#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1324#true} is VALID [2022-04-28 05:38:17,065 INFO L272 TraceCheckUtils]: 6: Hoare triple {1324#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,065 INFO L290 TraceCheckUtils]: 7: Hoare triple {1324#true} ~cond := #in~cond; {1350#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:38:17,066 INFO L290 TraceCheckUtils]: 8: Hoare triple {1350#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1354#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:17,066 INFO L290 TraceCheckUtils]: 9: Hoare triple {1354#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1354#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:17,067 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1354#(not (= |assume_abort_if_not_#in~cond| 0))} {1324#true} #79#return; {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:38:17,067 INFO L290 TraceCheckUtils]: 11: Hoare triple {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:38:17,067 INFO L272 TraceCheckUtils]: 12: Hoare triple {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,068 INFO L290 TraceCheckUtils]: 13: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:38:17,068 INFO L290 TraceCheckUtils]: 14: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:38:17,068 INFO L290 TraceCheckUtils]: 15: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:38:17,068 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1324#true} {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #81#return; {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:38:17,069 INFO L272 TraceCheckUtils]: 17: Hoare triple {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,069 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#true} ~cond := #in~cond; {1350#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:38:17,069 INFO L290 TraceCheckUtils]: 19: Hoare triple {1350#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1354#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:17,070 INFO L290 TraceCheckUtils]: 20: Hoare triple {1354#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1354#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:17,070 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1354#(not (= |assume_abort_if_not_#in~cond| 0))} {1361#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #83#return; {1395#(and (<= 1 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:38:17,071 INFO L272 TraceCheckUtils]: 22: Hoare triple {1395#(and (<= 1 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,071 INFO L290 TraceCheckUtils]: 23: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:38:17,071 INFO L290 TraceCheckUtils]: 24: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:38:17,071 INFO L290 TraceCheckUtils]: 25: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:38:17,073 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1324#true} {1395#(and (<= 1 main_~x~0) (<= main_~x~0 1))} #85#return; {1395#(and (<= 1 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:38:17,073 INFO L290 TraceCheckUtils]: 27: Hoare triple {1395#(and (<= 1 main_~x~0) (<= main_~x~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,073 INFO L272 TraceCheckUtils]: 28: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,073 INFO L290 TraceCheckUtils]: 29: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:38:17,074 INFO L290 TraceCheckUtils]: 30: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:38:17,074 INFO L290 TraceCheckUtils]: 31: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:38:17,074 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1324#true} {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,075 INFO L272 TraceCheckUtils]: 33: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:38:17,075 INFO L290 TraceCheckUtils]: 35: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:38:17,075 INFO L290 TraceCheckUtils]: 36: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:38:17,076 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1324#true} {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,076 INFO L290 TraceCheckUtils]: 38: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,077 INFO L290 TraceCheckUtils]: 39: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,077 INFO L290 TraceCheckUtils]: 40: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,077 INFO L272 TraceCheckUtils]: 41: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:38:17,078 INFO L290 TraceCheckUtils]: 42: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:38:17,078 INFO L290 TraceCheckUtils]: 43: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:38:17,078 INFO L290 TraceCheckUtils]: 44: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:38:17,079 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1324#true} {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:38:17,086 INFO L272 TraceCheckUtils]: 46: Hoare triple {1414#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= 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)); {1472#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:38:17,087 INFO L290 TraceCheckUtils]: 47: Hoare triple {1472#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1476#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:38:17,088 INFO L290 TraceCheckUtils]: 48: Hoare triple {1476#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1325#false} is VALID [2022-04-28 05:38:17,088 INFO L290 TraceCheckUtils]: 49: Hoare triple {1325#false} assume !false; {1325#false} is VALID [2022-04-28 05:38:17,089 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 5 proven. 21 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:38:17,089 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:38:52,980 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:38:52,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [589019456] [2022-04-28 05:38:52,980 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:38:52,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1677160524] [2022-04-28 05:38:52,980 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1677160524] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:38:52,980 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:38:52,980 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-28 05:38:52,981 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:38:52,981 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1496175674] [2022-04-28 05:38:52,981 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1496175674] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:38:52,981 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:38:52,981 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:38:52,981 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1347171111] [2022-04-28 05:38:52,981 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:38:52,982 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 50 [2022-04-28 05:38:52,982 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:38:52,983 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 05:38:53,015 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:53,016 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:38:53,016 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:53,016 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:38:53,016 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:38:53,017 INFO L87 Difference]: Start difference. First operand 43 states and 54 transitions. Second operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 05:38:53,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:53,531 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-28 05:38:53,532 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:38:53,532 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 50 [2022-04-28 05:38:53,532 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:38:53,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 05:38:53,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-28 05:38:53,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 05:38:53,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-28 05:38:53,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 65 transitions. [2022-04-28 05:38:53,598 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:38:53,600 INFO L225 Difference]: With dead ends: 58 [2022-04-28 05:38:53,600 INFO L226 Difference]: Without dead ends: 56 [2022-04-28 05:38:53,600 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 45 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:38:53,601 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 31 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 139 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 193 SdHoareTripleChecker+Invalid, 153 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 139 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:38:53,601 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [40 Valid, 193 Invalid, 153 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 139 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:38:53,602 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-28 05:38:53,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2022-04-28 05:38:53,680 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:38:53,681 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:38:53,681 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:38:53,681 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:38:53,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:53,684 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-28 05:38:53,684 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-28 05:38:53,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:53,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:53,685 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 56 states. [2022-04-28 05:38:53,688 INFO L87 Difference]: Start difference. First operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 56 states. [2022-04-28 05:38:53,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:38:53,692 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-28 05:38:53,692 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-28 05:38:53,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:38:53,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:38:53,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:38:53,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:38:53,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:38:53,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 71 transitions. [2022-04-28 05:38:53,698 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 71 transitions. Word has length 50 [2022-04-28 05:38:53,699 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:38:53,699 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 71 transitions. [2022-04-28 05:38:53,699 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 05:38:53,699 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 71 transitions. [2022-04-28 05:38:53,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:38:53,806 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 71 transitions. [2022-04-28 05:38:53,806 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 05:38:53,807 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:38:53,807 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:38:53,832 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:38:54,031 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:38:54,032 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:38:54,032 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:38:54,032 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 1 times [2022-04-28 05:38:54,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:38:54,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1316911659] [2022-04-28 05:38:54,033 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:38:54,033 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 2 times [2022-04-28 05:38:54,033 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:38:54,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1577403546] [2022-04-28 05:38:54,033 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:38:54,033 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:38:54,052 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:38:54,053 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1563048110] [2022-04-28 05:38:54,053 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:38:54,053 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:38:54,053 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:38:54,059 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:38:54,060 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:38:54,107 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:38:54,107 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:38:54,108 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:38:54,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:38:54,127 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:38:58,131 INFO L272 TraceCheckUtils]: 0: Hoare triple {1840#true} call ULTIMATE.init(); {1840#true} is VALID [2022-04-28 05:38:58,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {1840#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1840#true} is VALID [2022-04-28 05:38:58,131 INFO L290 TraceCheckUtils]: 2: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,131 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1840#true} {1840#true} #103#return; {1840#true} is VALID [2022-04-28 05:38:58,131 INFO L272 TraceCheckUtils]: 4: Hoare triple {1840#true} call #t~ret6 := main(); {1840#true} is VALID [2022-04-28 05:38:58,131 INFO L290 TraceCheckUtils]: 5: Hoare triple {1840#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L272 TraceCheckUtils]: 6: Hoare triple {1840#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L290 TraceCheckUtils]: 7: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L290 TraceCheckUtils]: 8: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L290 TraceCheckUtils]: 9: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1840#true} {1840#true} #79#return; {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L290 TraceCheckUtils]: 11: Hoare triple {1840#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1840#true} is VALID [2022-04-28 05:38:58,132 INFO L272 TraceCheckUtils]: 12: Hoare triple {1840#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,138 INFO L290 TraceCheckUtils]: 13: Hoare triple {1840#true} ~cond := #in~cond; {1884#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:38:58,139 INFO L290 TraceCheckUtils]: 14: Hoare triple {1884#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1888#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:58,139 INFO L290 TraceCheckUtils]: 15: Hoare triple {1888#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1888#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:38:58,140 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1888#(not (= |assume_abort_if_not_#in~cond| 0))} {1840#true} #81#return; {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,140 INFO L272 TraceCheckUtils]: 17: Hoare triple {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,140 INFO L290 TraceCheckUtils]: 18: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,140 INFO L290 TraceCheckUtils]: 19: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,140 INFO L290 TraceCheckUtils]: 20: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,141 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1840#true} {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #83#return; {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,141 INFO L272 TraceCheckUtils]: 22: Hoare triple {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,141 INFO L290 TraceCheckUtils]: 23: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,141 INFO L290 TraceCheckUtils]: 24: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,141 INFO L290 TraceCheckUtils]: 25: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,141 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1840#true} {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #85#return; {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,142 INFO L290 TraceCheckUtils]: 27: Hoare triple {1895#(and (<= 0 main_~y~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,142 INFO L272 TraceCheckUtils]: 28: Hoare triple {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,142 INFO L290 TraceCheckUtils]: 29: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,142 INFO L290 TraceCheckUtils]: 30: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,143 INFO L290 TraceCheckUtils]: 31: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,143 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1840#true} {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #87#return; {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,143 INFO L272 TraceCheckUtils]: 33: Hoare triple {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,143 INFO L290 TraceCheckUtils]: 34: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,144 INFO L290 TraceCheckUtils]: 35: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,144 INFO L290 TraceCheckUtils]: 36: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,144 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1840#true} {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #89#return; {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,145 INFO L290 TraceCheckUtils]: 38: Hoare triple {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,145 INFO L290 TraceCheckUtils]: 39: Hoare triple {1929#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,146 INFO L290 TraceCheckUtils]: 40: Hoare triple {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,146 INFO L272 TraceCheckUtils]: 41: Hoare triple {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,146 INFO L290 TraceCheckUtils]: 42: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,146 INFO L290 TraceCheckUtils]: 43: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,146 INFO L290 TraceCheckUtils]: 44: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,147 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1840#true} {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} #91#return; {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,147 INFO L272 TraceCheckUtils]: 46: Hoare triple {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1840#true} is VALID [2022-04-28 05:38:58,147 INFO L290 TraceCheckUtils]: 47: Hoare triple {1840#true} ~cond := #in~cond; {1840#true} is VALID [2022-04-28 05:38:58,147 INFO L290 TraceCheckUtils]: 48: Hoare triple {1840#true} assume !(0 == ~cond); {1840#true} is VALID [2022-04-28 05:38:58,148 INFO L290 TraceCheckUtils]: 49: Hoare triple {1840#true} assume true; {1840#true} is VALID [2022-04-28 05:38:58,148 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1840#true} {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} #93#return; {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:38:58,150 INFO L272 TraceCheckUtils]: 51: Hoare triple {1966#(and (<= 0 main_~y~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:38:58,150 INFO L290 TraceCheckUtils]: 52: Hoare triple {2003#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:38:58,151 INFO L290 TraceCheckUtils]: 53: Hoare triple {2007#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1841#false} is VALID [2022-04-28 05:38:58,151 INFO L290 TraceCheckUtils]: 54: Hoare triple {1841#false} assume !false; {1841#false} is VALID [2022-04-28 05:38:58,151 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 7 proven. 12 refuted. 0 times theorem prover too weak. 49 trivial. 0 not checked. [2022-04-28 05:38:58,151 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:39:34,621 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:39:34,621 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1577403546] [2022-04-28 05:39:34,621 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:39:34,621 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1563048110] [2022-04-28 05:39:34,622 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1563048110] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:39:34,622 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:39:34,622 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-28 05:39:34,622 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:39:34,622 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1316911659] [2022-04-28 05:39:34,622 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1316911659] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:39:34,622 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:39:34,622 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:39:34,622 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1745249304] [2022-04-28 05:39:34,622 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:39:34,623 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 55 [2022-04-28 05:39:34,623 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:39:34,623 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:39:34,657 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:39:34,657 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:39:34,658 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:39:34,658 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:39:34,658 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:39:34,658 INFO L87 Difference]: Start difference. First operand 55 states and 71 transitions. Second operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:39:35,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:39:35,253 INFO L93 Difference]: Finished difference Result 62 states and 77 transitions. [2022-04-28 05:39:35,254 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:39:35,254 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 55 [2022-04-28 05:39:35,254 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:39:35,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:39:35,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-28 05:39:35,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:39:35,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-28 05:39:35,258 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 65 transitions. [2022-04-28 05:39:35,325 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:39:35,326 INFO L225 Difference]: With dead ends: 62 [2022-04-28 05:39:35,326 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 05:39:35,327 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 50 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:39:35,327 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 22 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 169 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 169 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:39:35,327 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 180 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 169 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:39:35,328 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 05:39:35,439 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-28 05:39:35,439 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:39:35,440 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:39:35,440 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:39:35,440 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:39:35,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:39:35,443 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-28 05:39:35,443 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-28 05:39:35,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:39:35,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:39:35,444 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 60 states. [2022-04-28 05:39:35,444 INFO L87 Difference]: Start difference. First operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 60 states. [2022-04-28 05:39:35,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:39:35,446 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-28 05:39:35,446 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-28 05:39:35,447 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:39:35,447 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:39:35,447 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:39:35,447 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:39:35,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:39:35,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 74 transitions. [2022-04-28 05:39:35,450 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 74 transitions. Word has length 55 [2022-04-28 05:39:35,450 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:39:35,450 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 74 transitions. [2022-04-28 05:39:35,450 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 05:39:35,450 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 74 transitions. [2022-04-28 05:39:35,535 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:39:35,535 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 74 transitions. [2022-04-28 05:39:35,536 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-28 05:39:35,536 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:39:35,536 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:39:35,554 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:39:35,739 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:39:35,739 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:39:35,740 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:39:35,740 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 1 times [2022-04-28 05:39:35,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:39:35,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1025761652] [2022-04-28 05:39:35,742 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:39:35,742 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 2 times [2022-04-28 05:39:35,742 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:39:35,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [415629995] [2022-04-28 05:39:35,743 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:39:35,743 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:39:35,766 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:39:35,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [76677397] [2022-04-28 05:39:35,766 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:39:35,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:39:35,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:39:35,772 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:39:35,773 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:39:35,827 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:39:35,827 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:39:35,828 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 05:39:35,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:39:35,844 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:39:39,883 INFO L272 TraceCheckUtils]: 0: Hoare triple {2395#true} call ULTIMATE.init(); {2395#true} is VALID [2022-04-28 05:39:39,883 INFO L290 TraceCheckUtils]: 1: Hoare triple {2395#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2395#true} is VALID [2022-04-28 05:39:39,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {2395#true} assume true; {2395#true} is VALID [2022-04-28 05:39:39,883 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2395#true} {2395#true} #103#return; {2395#true} is VALID [2022-04-28 05:39:39,884 INFO L272 TraceCheckUtils]: 4: Hoare triple {2395#true} call #t~ret6 := main(); {2395#true} is VALID [2022-04-28 05:39:39,884 INFO L290 TraceCheckUtils]: 5: Hoare triple {2395#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2395#true} is VALID [2022-04-28 05:39:39,884 INFO L272 TraceCheckUtils]: 6: Hoare triple {2395#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {2395#true} ~cond := #in~cond; {2421#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:39:39,885 INFO L290 TraceCheckUtils]: 8: Hoare triple {2421#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2425#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:39:39,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {2425#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2425#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:39:39,886 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2425#(not (= |assume_abort_if_not_#in~cond| 0))} {2395#true} #79#return; {2432#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:39:39,887 INFO L290 TraceCheckUtils]: 11: Hoare triple {2432#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2432#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:39:39,887 INFO L272 TraceCheckUtils]: 12: Hoare triple {2432#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,887 INFO L290 TraceCheckUtils]: 13: Hoare triple {2395#true} ~cond := #in~cond; {2421#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:39:39,888 INFO L290 TraceCheckUtils]: 14: Hoare triple {2421#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2425#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:39:39,888 INFO L290 TraceCheckUtils]: 15: Hoare triple {2425#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2425#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:39:39,889 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2425#(not (= |assume_abort_if_not_#in~cond| 0))} {2432#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #81#return; {2451#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,889 INFO L272 TraceCheckUtils]: 17: Hoare triple {2451#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,890 INFO L290 TraceCheckUtils]: 18: Hoare triple {2395#true} ~cond := #in~cond; {2421#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:39:39,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {2421#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2425#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:39:39,891 INFO L290 TraceCheckUtils]: 20: Hoare triple {2425#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2425#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:39:39,892 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2425#(not (= |assume_abort_if_not_#in~cond| 0))} {2451#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} #83#return; {2467#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,892 INFO L272 TraceCheckUtils]: 22: Hoare triple {2467#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,892 INFO L290 TraceCheckUtils]: 23: Hoare triple {2395#true} ~cond := #in~cond; {2395#true} is VALID [2022-04-28 05:39:39,892 INFO L290 TraceCheckUtils]: 24: Hoare triple {2395#true} assume !(0 == ~cond); {2395#true} is VALID [2022-04-28 05:39:39,892 INFO L290 TraceCheckUtils]: 25: Hoare triple {2395#true} assume true; {2395#true} is VALID [2022-04-28 05:39:39,893 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2395#true} {2467#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} #85#return; {2467#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,893 INFO L290 TraceCheckUtils]: 27: Hoare triple {2467#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,893 INFO L272 TraceCheckUtils]: 28: Hoare triple {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,894 INFO L290 TraceCheckUtils]: 29: Hoare triple {2395#true} ~cond := #in~cond; {2395#true} is VALID [2022-04-28 05:39:39,894 INFO L290 TraceCheckUtils]: 30: Hoare triple {2395#true} assume !(0 == ~cond); {2395#true} is VALID [2022-04-28 05:39:39,894 INFO L290 TraceCheckUtils]: 31: Hoare triple {2395#true} assume true; {2395#true} is VALID [2022-04-28 05:39:39,894 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2395#true} {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} #87#return; {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,895 INFO L272 TraceCheckUtils]: 33: Hoare triple {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,895 INFO L290 TraceCheckUtils]: 34: Hoare triple {2395#true} ~cond := #in~cond; {2395#true} is VALID [2022-04-28 05:39:39,895 INFO L290 TraceCheckUtils]: 35: Hoare triple {2395#true} assume !(0 == ~cond); {2395#true} is VALID [2022-04-28 05:39:39,895 INFO L290 TraceCheckUtils]: 36: Hoare triple {2395#true} assume true; {2395#true} is VALID [2022-04-28 05:39:39,896 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2395#true} {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} #89#return; {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,896 INFO L290 TraceCheckUtils]: 38: Hoare triple {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,896 INFO L290 TraceCheckUtils]: 39: Hoare triple {2486#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,897 INFO L290 TraceCheckUtils]: 40: Hoare triple {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,897 INFO L272 TraceCheckUtils]: 41: Hoare triple {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,897 INFO L290 TraceCheckUtils]: 42: Hoare triple {2395#true} ~cond := #in~cond; {2395#true} is VALID [2022-04-28 05:39:39,897 INFO L290 TraceCheckUtils]: 43: Hoare triple {2395#true} assume !(0 == ~cond); {2395#true} is VALID [2022-04-28 05:39:39,897 INFO L290 TraceCheckUtils]: 44: Hoare triple {2395#true} assume true; {2395#true} is VALID [2022-04-28 05:39:39,898 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2395#true} {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} #91#return; {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,898 INFO L272 TraceCheckUtils]: 46: Hoare triple {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,898 INFO L290 TraceCheckUtils]: 47: Hoare triple {2395#true} ~cond := #in~cond; {2548#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:39:39,899 INFO L290 TraceCheckUtils]: 48: Hoare triple {2548#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:39:39,899 INFO L290 TraceCheckUtils]: 49: Hoare triple {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:39:39,900 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} #93#return; {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,900 INFO L272 TraceCheckUtils]: 51: Hoare triple {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2395#true} is VALID [2022-04-28 05:39:39,900 INFO L290 TraceCheckUtils]: 52: Hoare triple {2395#true} ~cond := #in~cond; {2548#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:39:39,900 INFO L290 TraceCheckUtils]: 53: Hoare triple {2548#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:39:39,901 INFO L290 TraceCheckUtils]: 54: Hoare triple {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:39:39,901 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2552#(not (= |__VERIFIER_assert_#in~cond| 0))} {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} #95#return; {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:39:39,902 INFO L272 TraceCheckUtils]: 56: Hoare triple {2523#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2577#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:39:39,902 INFO L290 TraceCheckUtils]: 57: Hoare triple {2577#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2581#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:39:39,903 INFO L290 TraceCheckUtils]: 58: Hoare triple {2581#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2396#false} is VALID [2022-04-28 05:39:39,903 INFO L290 TraceCheckUtils]: 59: Hoare triple {2396#false} assume !false; {2396#false} is VALID [2022-04-28 05:39:39,903 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 10 proven. 29 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 05:39:39,903 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:28,955 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:28,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [415629995] [2022-04-28 05:40:28,955 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:28,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [76677397] [2022-04-28 05:40:28,955 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [76677397] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:40:28,956 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:40:28,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-28 05:40:28,956 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:28,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1025761652] [2022-04-28 05:40:28,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1025761652] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:28,956 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:28,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:40:28,956 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1154898720] [2022-04-28 05:40:28,956 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:28,957 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) Word has length 60 [2022-04-28 05:40:28,957 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:28,957 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 05:40:28,993 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:28,993 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:40:28,993 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:28,994 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:40:28,994 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=167, Unknown=0, NotChecked=0, Total=210 [2022-04-28 05:40:28,994 INFO L87 Difference]: Start difference. First operand 59 states and 74 transitions. Second operand has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 05:40:29,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:29,895 INFO L93 Difference]: Finished difference Result 68 states and 82 transitions. [2022-04-28 05:40:29,896 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:40:29,896 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) Word has length 60 [2022-04-28 05:40:29,896 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:29,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 05:40:29,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 67 transitions. [2022-04-28 05:40:29,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 05:40:29,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 67 transitions. [2022-04-28 05:40:29,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 67 transitions. [2022-04-28 05:40:29,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:29,965 INFO L225 Difference]: With dead ends: 68 [2022-04-28 05:40:29,965 INFO L226 Difference]: Without dead ends: 66 [2022-04-28 05:40:29,966 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 50 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 49 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:40:29,966 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 31 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 311 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 326 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 311 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:29,967 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 161 Invalid, 326 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 311 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:40:29,967 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-28 05:40:30,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 63. [2022-04-28 05:40:30,056 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:30,056 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:40:30,057 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:40:30,057 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:40:30,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:30,060 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-04-28 05:40:30,060 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 80 transitions. [2022-04-28 05:40:30,060 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:30,060 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:30,061 INFO L74 IsIncluded]: Start isIncluded. First operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 66 states. [2022-04-28 05:40:30,061 INFO L87 Difference]: Start difference. First operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 66 states. [2022-04-28 05:40:30,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:30,063 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-04-28 05:40:30,063 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 80 transitions. [2022-04-28 05:40:30,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:30,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:30,064 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:30,064 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:30,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:40:30,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 77 transitions. [2022-04-28 05:40:30,067 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 77 transitions. Word has length 60 [2022-04-28 05:40:30,067 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:30,067 INFO L495 AbstractCegarLoop]: Abstraction has 63 states and 77 transitions. [2022-04-28 05:40:30,067 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 1.9166666666666667) internal successors, (23), 10 states have internal predecessors, (23), 6 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 05:40:30,067 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 63 states and 77 transitions. [2022-04-28 05:40:30,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:30,195 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 05:40:30,196 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 05:40:30,196 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:30,196 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:30,214 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:40:30,396 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:40:30,397 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:30,397 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:30,397 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 1 times [2022-04-28 05:40:30,397 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:30,397 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [548187673] [2022-04-28 05:40:30,398 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:30,398 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 2 times [2022-04-28 05:40:30,398 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:30,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1255051852] [2022-04-28 05:40:30,398 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:30,398 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:30,412 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:30,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [162487129] [2022-04-28 05:40:30,412 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:40:30,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:30,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:30,414 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:40:30,419 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:40:30,476 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:40:30,476 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:30,478 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:40:30,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:30,495 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:30,922 INFO L272 TraceCheckUtils]: 0: Hoare triple {3004#true} call ULTIMATE.init(); {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L290 TraceCheckUtils]: 1: Hoare triple {3004#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3004#true} {3004#true} #103#return; {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L272 TraceCheckUtils]: 4: Hoare triple {3004#true} call #t~ret6 := main(); {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {3004#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L272 TraceCheckUtils]: 6: Hoare triple {3004#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,923 INFO L290 TraceCheckUtils]: 7: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,924 INFO L290 TraceCheckUtils]: 8: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,924 INFO L290 TraceCheckUtils]: 9: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,924 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3004#true} {3004#true} #79#return; {3004#true} is VALID [2022-04-28 05:40:30,924 INFO L290 TraceCheckUtils]: 11: Hoare triple {3004#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3004#true} is VALID [2022-04-28 05:40:30,924 INFO L272 TraceCheckUtils]: 12: Hoare triple {3004#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,937 INFO L290 TraceCheckUtils]: 13: Hoare triple {3004#true} ~cond := #in~cond; {3048#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:30,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {3048#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3052#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:30,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {3052#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3052#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:30,938 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3052#(not (= |assume_abort_if_not_#in~cond| 0))} {3004#true} #81#return; {3059#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:30,939 INFO L272 TraceCheckUtils]: 17: Hoare triple {3059#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,939 INFO L290 TraceCheckUtils]: 18: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,940 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3004#true} {3059#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #83#return; {3059#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:30,940 INFO L272 TraceCheckUtils]: 22: Hoare triple {3059#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,941 INFO L290 TraceCheckUtils]: 23: Hoare triple {3004#true} ~cond := #in~cond; {3048#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:30,941 INFO L290 TraceCheckUtils]: 24: Hoare triple {3048#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3052#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:30,941 INFO L290 TraceCheckUtils]: 25: Hoare triple {3052#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3052#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:30,942 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3052#(not (= |assume_abort_if_not_#in~cond| 0))} {3059#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #85#return; {3090#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:30,942 INFO L290 TraceCheckUtils]: 27: Hoare triple {3090#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,942 INFO L272 TraceCheckUtils]: 28: Hoare triple {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,942 INFO L290 TraceCheckUtils]: 29: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,943 INFO L290 TraceCheckUtils]: 30: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,943 INFO L290 TraceCheckUtils]: 31: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,943 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3004#true} {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} #87#return; {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,943 INFO L272 TraceCheckUtils]: 33: Hoare triple {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,943 INFO L290 TraceCheckUtils]: 34: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,943 INFO L290 TraceCheckUtils]: 35: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,944 INFO L290 TraceCheckUtils]: 36: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,944 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3004#true} {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} #89#return; {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,944 INFO L290 TraceCheckUtils]: 38: Hoare triple {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} assume !false; {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,945 INFO L290 TraceCheckUtils]: 39: Hoare triple {3094#(and (<= main_~b~0 1) (<= 1 main_~b~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,945 INFO L290 TraceCheckUtils]: 40: Hoare triple {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} assume !false; {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,945 INFO L272 TraceCheckUtils]: 41: Hoare triple {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,945 INFO L290 TraceCheckUtils]: 42: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,945 INFO L290 TraceCheckUtils]: 43: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,945 INFO L290 TraceCheckUtils]: 44: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,946 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3004#true} {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} #91#return; {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,946 INFO L272 TraceCheckUtils]: 46: Hoare triple {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,946 INFO L290 TraceCheckUtils]: 47: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,946 INFO L290 TraceCheckUtils]: 48: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,946 INFO L290 TraceCheckUtils]: 49: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,947 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3004#true} {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} #93#return; {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,947 INFO L272 TraceCheckUtils]: 51: Hoare triple {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,947 INFO L290 TraceCheckUtils]: 52: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,947 INFO L290 TraceCheckUtils]: 53: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,947 INFO L290 TraceCheckUtils]: 54: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,948 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3004#true} {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} #95#return; {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,948 INFO L272 TraceCheckUtils]: 56: Hoare triple {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:30,948 INFO L290 TraceCheckUtils]: 57: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:30,948 INFO L290 TraceCheckUtils]: 58: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:30,948 INFO L290 TraceCheckUtils]: 59: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:30,949 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3004#true} {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} #97#return; {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,950 INFO L290 TraceCheckUtils]: 61: Hoare triple {3131#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= main_~b~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {3198#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= main_~b~0 1) (= (+ (- 1) main_~k~0) 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,950 INFO L290 TraceCheckUtils]: 62: Hoare triple {3198#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= main_~b~0 1) (= (+ (- 1) main_~k~0) 0) (<= 1 main_~b~0))} assume !false; {3198#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= main_~b~0 1) (= (+ (- 1) main_~k~0) 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:40:30,951 INFO L272 TraceCheckUtils]: 63: Hoare triple {3198#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= main_~b~0 1) (= (+ (- 1) main_~k~0) 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3205#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:40:30,951 INFO L290 TraceCheckUtils]: 64: Hoare triple {3205#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3209#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:30,951 INFO L290 TraceCheckUtils]: 65: Hoare triple {3209#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3005#false} is VALID [2022-04-28 05:40:30,951 INFO L290 TraceCheckUtils]: 66: Hoare triple {3005#false} assume !false; {3005#false} is VALID [2022-04-28 05:40:30,952 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 17 proven. 17 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:40:30,952 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:31,270 INFO L290 TraceCheckUtils]: 66: Hoare triple {3005#false} assume !false; {3005#false} is VALID [2022-04-28 05:40:31,271 INFO L290 TraceCheckUtils]: 65: Hoare triple {3209#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3005#false} is VALID [2022-04-28 05:40:31,271 INFO L290 TraceCheckUtils]: 64: Hoare triple {3205#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3209#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:31,272 INFO L272 TraceCheckUtils]: 63: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3205#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:40:31,272 INFO L290 TraceCheckUtils]: 62: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,274 INFO L290 TraceCheckUtils]: 61: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,274 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3004#true} {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,275 INFO L290 TraceCheckUtils]: 59: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,275 INFO L290 TraceCheckUtils]: 58: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,275 INFO L290 TraceCheckUtils]: 57: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,275 INFO L272 TraceCheckUtils]: 56: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,276 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3004#true} {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,276 INFO L290 TraceCheckUtils]: 54: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,276 INFO L290 TraceCheckUtils]: 53: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,276 INFO L290 TraceCheckUtils]: 52: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,276 INFO L272 TraceCheckUtils]: 51: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,277 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3004#true} {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #93#return; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,277 INFO L290 TraceCheckUtils]: 49: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,277 INFO L290 TraceCheckUtils]: 48: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,277 INFO L290 TraceCheckUtils]: 47: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,277 INFO L272 TraceCheckUtils]: 46: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,278 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3004#true} {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #91#return; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,278 INFO L290 TraceCheckUtils]: 44: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,278 INFO L290 TraceCheckUtils]: 43: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,278 INFO L290 TraceCheckUtils]: 42: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,278 INFO L272 TraceCheckUtils]: 41: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,279 INFO L290 TraceCheckUtils]: 40: Hoare triple {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,279 INFO L290 TraceCheckUtils]: 39: Hoare triple {3004#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3225#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:40:31,279 INFO L290 TraceCheckUtils]: 38: Hoare triple {3004#true} assume !false; {3004#true} is VALID [2022-04-28 05:40:31,279 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3004#true} {3004#true} #89#return; {3004#true} is VALID [2022-04-28 05:40:31,279 INFO L290 TraceCheckUtils]: 36: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,279 INFO L290 TraceCheckUtils]: 35: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L290 TraceCheckUtils]: 34: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L272 TraceCheckUtils]: 33: Hoare triple {3004#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3004#true} {3004#true} #87#return; {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L290 TraceCheckUtils]: 31: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L290 TraceCheckUtils]: 30: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L290 TraceCheckUtils]: 29: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L272 TraceCheckUtils]: 28: Hoare triple {3004#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L290 TraceCheckUtils]: 27: Hoare triple {3004#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3004#true} {3004#true} #85#return; {3004#true} is VALID [2022-04-28 05:40:31,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L290 TraceCheckUtils]: 24: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L290 TraceCheckUtils]: 23: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L272 TraceCheckUtils]: 22: Hoare triple {3004#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3004#true} {3004#true} #83#return; {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L290 TraceCheckUtils]: 19: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L290 TraceCheckUtils]: 18: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L272 TraceCheckUtils]: 17: Hoare triple {3004#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,281 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3004#true} {3004#true} #81#return; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 15: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 14: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 13: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L272 TraceCheckUtils]: 12: Hoare triple {3004#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 11: Hoare triple {3004#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3004#true} {3004#true} #79#return; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 9: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 8: Hoare triple {3004#true} assume !(0 == ~cond); {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L290 TraceCheckUtils]: 7: Hoare triple {3004#true} ~cond := #in~cond; {3004#true} is VALID [2022-04-28 05:40:31,282 INFO L272 TraceCheckUtils]: 6: Hoare triple {3004#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {3004#true} is VALID [2022-04-28 05:40:31,283 INFO L290 TraceCheckUtils]: 5: Hoare triple {3004#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3004#true} is VALID [2022-04-28 05:40:31,283 INFO L272 TraceCheckUtils]: 4: Hoare triple {3004#true} call #t~ret6 := main(); {3004#true} is VALID [2022-04-28 05:40:31,283 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3004#true} {3004#true} #103#return; {3004#true} is VALID [2022-04-28 05:40:31,283 INFO L290 TraceCheckUtils]: 2: Hoare triple {3004#true} assume true; {3004#true} is VALID [2022-04-28 05:40:31,283 INFO L290 TraceCheckUtils]: 1: Hoare triple {3004#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3004#true} is VALID [2022-04-28 05:40:31,283 INFO L272 TraceCheckUtils]: 0: Hoare triple {3004#true} call ULTIMATE.init(); {3004#true} is VALID [2022-04-28 05:40:31,284 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 86 trivial. 0 not checked. [2022-04-28 05:40:31,284 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:31,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1255051852] [2022-04-28 05:40:31,284 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:31,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [162487129] [2022-04-28 05:40:31,284 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [162487129] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:40:31,285 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:40:31,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [11] total 12 [2022-04-28 05:40:31,285 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:31,285 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [548187673] [2022-04-28 05:40:31,285 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [548187673] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:31,285 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:31,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:40:31,285 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [221499539] [2022-04-28 05:40:31,285 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:31,286 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 67 [2022-04-28 05:40:31,286 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:31,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:40:31,316 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:40:31,317 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:40:31,317 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:31,317 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:40:31,317 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:40:31,317 INFO L87 Difference]: Start difference. First operand 63 states and 77 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:40:31,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:31,537 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-28 05:40:31,537 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:40:31,537 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 67 [2022-04-28 05:40:31,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:31,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:40:31,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-28 05:40:31,539 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:40:31,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-28 05:40:31,540 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-28 05:40:31,580 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:31,582 INFO L225 Difference]: With dead ends: 69 [2022-04-28 05:40:31,582 INFO L226 Difference]: Without dead ends: 67 [2022-04-28 05:40:31,583 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 121 SyntacticMatches, 2 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:40:31,583 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:31,583 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 137 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:40:31,584 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-28 05:40:31,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 59. [2022-04-28 05:40:31,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:31,666 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:40:31,667 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:40:31,667 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:40:31,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:31,683 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-28 05:40:31,683 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-28 05:40:31,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:31,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:31,684 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-28 05:40:31,684 INFO L87 Difference]: Start difference. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-28 05:40:31,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:31,687 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-28 05:40:31,687 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-28 05:40:31,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:31,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:31,688 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:31,688 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:31,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:40:31,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 71 transitions. [2022-04-28 05:40:31,690 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 71 transitions. Word has length 67 [2022-04-28 05:40:31,690 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:31,690 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 71 transitions. [2022-04-28 05:40:31,690 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:40:31,690 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 71 transitions. [2022-04-28 05:40:31,780 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:31,781 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 71 transitions. [2022-04-28 05:40:31,782 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:40:31,782 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:31,782 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:31,801 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:40:31,995 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:40:31,995 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:31,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:31,996 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 1 times [2022-04-28 05:40:31,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:31,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [305342298] [2022-04-28 05:40:31,996 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:31,996 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 2 times [2022-04-28 05:40:31,997 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:31,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1829752852] [2022-04-28 05:40:31,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:31,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:32,010 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:32,010 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [657604713] [2022-04-28 05:40:32,010 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:40:32,010 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:32,011 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:32,011 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:40:32,019 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:40:32,068 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:40:32,068 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:32,069 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:40:32,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:32,084 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:32,301 INFO L272 TraceCheckUtils]: 0: Hoare triple {3809#true} call ULTIMATE.init(); {3809#true} is VALID [2022-04-28 05:40:32,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {3809#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3809#true} is VALID [2022-04-28 05:40:32,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,302 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3809#true} {3809#true} #103#return; {3809#true} is VALID [2022-04-28 05:40:32,302 INFO L272 TraceCheckUtils]: 4: Hoare triple {3809#true} call #t~ret6 := main(); {3809#true} is VALID [2022-04-28 05:40:32,302 INFO L290 TraceCheckUtils]: 5: Hoare triple {3809#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L272 TraceCheckUtils]: 6: Hoare triple {3809#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L290 TraceCheckUtils]: 8: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L290 TraceCheckUtils]: 9: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3809#true} {3809#true} #79#return; {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L290 TraceCheckUtils]: 11: Hoare triple {3809#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3809#true} is VALID [2022-04-28 05:40:32,304 INFO L272 TraceCheckUtils]: 12: Hoare triple {3809#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,305 INFO L290 TraceCheckUtils]: 13: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,305 INFO L290 TraceCheckUtils]: 14: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,305 INFO L290 TraceCheckUtils]: 15: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,305 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3809#true} {3809#true} #81#return; {3809#true} is VALID [2022-04-28 05:40:32,305 INFO L272 TraceCheckUtils]: 17: Hoare triple {3809#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,305 INFO L290 TraceCheckUtils]: 18: Hoare triple {3809#true} ~cond := #in~cond; {3868#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:32,306 INFO L290 TraceCheckUtils]: 19: Hoare triple {3868#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3872#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:32,306 INFO L290 TraceCheckUtils]: 20: Hoare triple {3872#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3872#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:32,307 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3872#(not (= |assume_abort_if_not_#in~cond| 0))} {3809#true} #83#return; {3879#(<= 1 main_~x~0)} is VALID [2022-04-28 05:40:32,307 INFO L272 TraceCheckUtils]: 22: Hoare triple {3879#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,307 INFO L290 TraceCheckUtils]: 23: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,307 INFO L290 TraceCheckUtils]: 24: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,307 INFO L290 TraceCheckUtils]: 25: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,308 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3809#true} {3879#(<= 1 main_~x~0)} #85#return; {3879#(<= 1 main_~x~0)} is VALID [2022-04-28 05:40:32,308 INFO L290 TraceCheckUtils]: 27: Hoare triple {3879#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,308 INFO L272 TraceCheckUtils]: 28: Hoare triple {3898#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,308 INFO L290 TraceCheckUtils]: 29: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,309 INFO L290 TraceCheckUtils]: 30: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,309 INFO L290 TraceCheckUtils]: 31: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,309 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3809#true} {3898#(<= 1 main_~a~0)} #87#return; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,309 INFO L272 TraceCheckUtils]: 33: Hoare triple {3898#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,309 INFO L290 TraceCheckUtils]: 34: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,309 INFO L290 TraceCheckUtils]: 35: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,310 INFO L290 TraceCheckUtils]: 36: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,310 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3809#true} {3898#(<= 1 main_~a~0)} #89#return; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,310 INFO L290 TraceCheckUtils]: 38: Hoare triple {3898#(<= 1 main_~a~0)} assume !false; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,311 INFO L290 TraceCheckUtils]: 39: Hoare triple {3898#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,311 INFO L290 TraceCheckUtils]: 40: Hoare triple {3935#(<= 1 main_~c~0)} assume !false; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,311 INFO L272 TraceCheckUtils]: 41: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,312 INFO L290 TraceCheckUtils]: 42: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,312 INFO L290 TraceCheckUtils]: 43: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,312 INFO L290 TraceCheckUtils]: 44: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,312 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #91#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,313 INFO L272 TraceCheckUtils]: 46: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,313 INFO L290 TraceCheckUtils]: 47: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,313 INFO L290 TraceCheckUtils]: 48: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,313 INFO L290 TraceCheckUtils]: 49: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,314 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #93#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,314 INFO L272 TraceCheckUtils]: 51: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,314 INFO L290 TraceCheckUtils]: 52: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,314 INFO L290 TraceCheckUtils]: 53: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,314 INFO L290 TraceCheckUtils]: 54: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,315 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #95#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,315 INFO L272 TraceCheckUtils]: 56: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,315 INFO L290 TraceCheckUtils]: 57: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,315 INFO L290 TraceCheckUtils]: 58: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,315 INFO L290 TraceCheckUtils]: 59: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,316 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #97#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,316 INFO L290 TraceCheckUtils]: 61: Hoare triple {3935#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,317 INFO L290 TraceCheckUtils]: 62: Hoare triple {3935#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4005#(<= 1 main_~b~0)} is VALID [2022-04-28 05:40:32,317 INFO L290 TraceCheckUtils]: 63: Hoare triple {4005#(<= 1 main_~b~0)} assume !false; {4005#(<= 1 main_~b~0)} is VALID [2022-04-28 05:40:32,318 INFO L290 TraceCheckUtils]: 64: Hoare triple {4005#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3810#false} is VALID [2022-04-28 05:40:32,318 INFO L272 TraceCheckUtils]: 65: Hoare triple {3810#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3810#false} is VALID [2022-04-28 05:40:32,318 INFO L290 TraceCheckUtils]: 66: Hoare triple {3810#false} ~cond := #in~cond; {3810#false} is VALID [2022-04-28 05:40:32,318 INFO L290 TraceCheckUtils]: 67: Hoare triple {3810#false} assume 0 == ~cond; {3810#false} is VALID [2022-04-28 05:40:32,318 INFO L290 TraceCheckUtils]: 68: Hoare triple {3810#false} assume !false; {3810#false} is VALID [2022-04-28 05:40:32,318 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-28 05:40:32,319 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:32,635 INFO L290 TraceCheckUtils]: 68: Hoare triple {3810#false} assume !false; {3810#false} is VALID [2022-04-28 05:40:32,635 INFO L290 TraceCheckUtils]: 67: Hoare triple {3810#false} assume 0 == ~cond; {3810#false} is VALID [2022-04-28 05:40:32,636 INFO L290 TraceCheckUtils]: 66: Hoare triple {3810#false} ~cond := #in~cond; {3810#false} is VALID [2022-04-28 05:40:32,636 INFO L272 TraceCheckUtils]: 65: Hoare triple {3810#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3810#false} is VALID [2022-04-28 05:40:32,636 INFO L290 TraceCheckUtils]: 64: Hoare triple {4005#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3810#false} is VALID [2022-04-28 05:40:32,637 INFO L290 TraceCheckUtils]: 63: Hoare triple {4005#(<= 1 main_~b~0)} assume !false; {4005#(<= 1 main_~b~0)} is VALID [2022-04-28 05:40:32,637 INFO L290 TraceCheckUtils]: 62: Hoare triple {3935#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4005#(<= 1 main_~b~0)} is VALID [2022-04-28 05:40:32,637 INFO L290 TraceCheckUtils]: 61: Hoare triple {3935#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,638 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #97#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,638 INFO L290 TraceCheckUtils]: 59: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,638 INFO L290 TraceCheckUtils]: 58: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,638 INFO L290 TraceCheckUtils]: 57: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,638 INFO L272 TraceCheckUtils]: 56: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,639 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #95#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,639 INFO L290 TraceCheckUtils]: 54: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,639 INFO L290 TraceCheckUtils]: 53: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,639 INFO L290 TraceCheckUtils]: 52: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,639 INFO L272 TraceCheckUtils]: 51: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,640 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #93#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,640 INFO L290 TraceCheckUtils]: 49: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,640 INFO L290 TraceCheckUtils]: 48: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,640 INFO L290 TraceCheckUtils]: 47: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,640 INFO L272 TraceCheckUtils]: 46: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,641 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3809#true} {3935#(<= 1 main_~c~0)} #91#return; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,641 INFO L290 TraceCheckUtils]: 44: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,641 INFO L290 TraceCheckUtils]: 43: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,641 INFO L290 TraceCheckUtils]: 42: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,641 INFO L272 TraceCheckUtils]: 41: Hoare triple {3935#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,641 INFO L290 TraceCheckUtils]: 40: Hoare triple {3935#(<= 1 main_~c~0)} assume !false; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,642 INFO L290 TraceCheckUtils]: 39: Hoare triple {3898#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3935#(<= 1 main_~c~0)} is VALID [2022-04-28 05:40:32,642 INFO L290 TraceCheckUtils]: 38: Hoare triple {3898#(<= 1 main_~a~0)} assume !false; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,642 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3809#true} {3898#(<= 1 main_~a~0)} #89#return; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,642 INFO L290 TraceCheckUtils]: 36: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,642 INFO L290 TraceCheckUtils]: 35: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,642 INFO L290 TraceCheckUtils]: 34: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,643 INFO L272 TraceCheckUtils]: 33: Hoare triple {3898#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,643 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3809#true} {3898#(<= 1 main_~a~0)} #87#return; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,643 INFO L290 TraceCheckUtils]: 31: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,643 INFO L290 TraceCheckUtils]: 30: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,643 INFO L290 TraceCheckUtils]: 29: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,643 INFO L272 TraceCheckUtils]: 28: Hoare triple {3898#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,644 INFO L290 TraceCheckUtils]: 27: Hoare triple {3879#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3898#(<= 1 main_~a~0)} is VALID [2022-04-28 05:40:32,644 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3809#true} {3879#(<= 1 main_~x~0)} #85#return; {3879#(<= 1 main_~x~0)} is VALID [2022-04-28 05:40:32,644 INFO L290 TraceCheckUtils]: 25: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,644 INFO L290 TraceCheckUtils]: 24: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,644 INFO L290 TraceCheckUtils]: 23: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,644 INFO L272 TraceCheckUtils]: 22: Hoare triple {3879#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,645 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3872#(not (= |assume_abort_if_not_#in~cond| 0))} {3809#true} #83#return; {3879#(<= 1 main_~x~0)} is VALID [2022-04-28 05:40:32,645 INFO L290 TraceCheckUtils]: 20: Hoare triple {3872#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3872#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:32,645 INFO L290 TraceCheckUtils]: 19: Hoare triple {4174#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {3872#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:32,646 INFO L290 TraceCheckUtils]: 18: Hoare triple {3809#true} ~cond := #in~cond; {4174#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:40:32,646 INFO L272 TraceCheckUtils]: 17: Hoare triple {3809#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3809#true} {3809#true} #81#return; {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L290 TraceCheckUtils]: 14: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L290 TraceCheckUtils]: 13: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L272 TraceCheckUtils]: 12: Hoare triple {3809#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L290 TraceCheckUtils]: 11: Hoare triple {3809#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3809#true} {3809#true} #79#return; {3809#true} is VALID [2022-04-28 05:40:32,646 INFO L290 TraceCheckUtils]: 9: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L290 TraceCheckUtils]: 8: Hoare triple {3809#true} assume !(0 == ~cond); {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L290 TraceCheckUtils]: 7: Hoare triple {3809#true} ~cond := #in~cond; {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L272 TraceCheckUtils]: 6: Hoare triple {3809#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L290 TraceCheckUtils]: 5: Hoare triple {3809#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L272 TraceCheckUtils]: 4: Hoare triple {3809#true} call #t~ret6 := main(); {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3809#true} {3809#true} #103#return; {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {3809#true} assume true; {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {3809#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L272 TraceCheckUtils]: 0: Hoare triple {3809#true} call ULTIMATE.init(); {3809#true} is VALID [2022-04-28 05:40:32,647 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-28 05:40:32,647 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:32,648 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1829752852] [2022-04-28 05:40:32,648 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:32,648 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [657604713] [2022-04-28 05:40:32,648 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [657604713] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:40:32,648 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:40:32,648 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:40:32,648 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:32,648 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [305342298] [2022-04-28 05:40:32,648 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [305342298] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:32,648 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:32,648 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:40:32,648 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [911464238] [2022-04-28 05:40:32,649 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:32,649 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:40:32,649 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:32,650 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:40:32,688 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:40:32,689 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:40:32,689 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:32,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:40:32,689 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:40:32,689 INFO L87 Difference]: Start difference. First operand 59 states and 71 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:40:33,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:33,608 INFO L93 Difference]: Finished difference Result 106 states and 146 transitions. [2022-04-28 05:40:33,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:40:33,608 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:40:33,609 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:33,609 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:40:33,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-28 05:40:33,611 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:40:33,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-28 05:40:33,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 110 transitions. [2022-04-28 05:40:33,702 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:33,705 INFO L225 Difference]: With dead ends: 106 [2022-04-28 05:40:33,705 INFO L226 Difference]: Without dead ends: 98 [2022-04-28 05:40:33,706 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 129 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:40:33,706 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 30 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 227 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:33,706 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 259 Invalid, 227 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:40:33,707 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-28 05:40:33,911 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 89. [2022-04-28 05:40:33,911 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:33,912 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:40:33,912 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:40:33,912 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:40:33,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:33,925 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-28 05:40:33,925 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-28 05:40:33,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:33,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:33,930 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-28 05:40:33,930 INFO L87 Difference]: Start difference. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-28 05:40:33,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:33,936 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-28 05:40:33,936 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-28 05:40:33,937 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:33,937 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:33,937 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:33,937 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:33,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:40:33,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 122 transitions. [2022-04-28 05:40:33,941 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 122 transitions. Word has length 69 [2022-04-28 05:40:33,944 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:33,944 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 122 transitions. [2022-04-28 05:40:33,945 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:40:33,945 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 122 transitions. [2022-04-28 05:40:34,102 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:34,103 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 122 transitions. [2022-04-28 05:40:34,103 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 05:40:34,103 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:34,104 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:34,120 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 05:40:34,304 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:40:34,305 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:34,305 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:34,305 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 1 times [2022-04-28 05:40:34,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:34,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [304362098] [2022-04-28 05:40:34,305 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:34,306 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 2 times [2022-04-28 05:40:34,306 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:34,306 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [317890052] [2022-04-28 05:40:34,306 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:34,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:34,320 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:34,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1800653455] [2022-04-28 05:40:34,320 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:40:34,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:34,320 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:34,321 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:40:34,331 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:40:34,382 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:40:34,382 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:34,383 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:40:34,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:34,403 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:34,717 INFO L272 TraceCheckUtils]: 0: Hoare triple {4827#true} call ULTIMATE.init(); {4827#true} is VALID [2022-04-28 05:40:34,717 INFO L290 TraceCheckUtils]: 1: Hoare triple {4827#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4827#true} is VALID [2022-04-28 05:40:34,717 INFO L290 TraceCheckUtils]: 2: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4827#true} {4827#true} #103#return; {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L272 TraceCheckUtils]: 4: Hoare triple {4827#true} call #t~ret6 := main(); {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L290 TraceCheckUtils]: 5: Hoare triple {4827#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L272 TraceCheckUtils]: 6: Hoare triple {4827#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L290 TraceCheckUtils]: 7: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L290 TraceCheckUtils]: 8: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L290 TraceCheckUtils]: 9: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4827#true} {4827#true} #79#return; {4827#true} is VALID [2022-04-28 05:40:34,718 INFO L290 TraceCheckUtils]: 11: Hoare triple {4827#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4827#true} is VALID [2022-04-28 05:40:34,719 INFO L272 TraceCheckUtils]: 12: Hoare triple {4827#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,723 INFO L290 TraceCheckUtils]: 13: Hoare triple {4827#true} ~cond := #in~cond; {4871#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:34,724 INFO L290 TraceCheckUtils]: 14: Hoare triple {4871#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:34,724 INFO L290 TraceCheckUtils]: 15: Hoare triple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:34,725 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} {4827#true} #81#return; {4882#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:34,725 INFO L272 TraceCheckUtils]: 17: Hoare triple {4882#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,725 INFO L290 TraceCheckUtils]: 18: Hoare triple {4827#true} ~cond := #in~cond; {4871#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:34,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {4871#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:34,726 INFO L290 TraceCheckUtils]: 20: Hoare triple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:34,727 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} {4882#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #83#return; {4898#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:34,727 INFO L272 TraceCheckUtils]: 22: Hoare triple {4898#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,727 INFO L290 TraceCheckUtils]: 23: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,727 INFO L290 TraceCheckUtils]: 24: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,727 INFO L290 TraceCheckUtils]: 25: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,727 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4827#true} {4898#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} #85#return; {4898#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:34,728 INFO L290 TraceCheckUtils]: 27: Hoare triple {4898#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-28 05:40:34,728 INFO L272 TraceCheckUtils]: 28: Hoare triple {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,728 INFO L290 TraceCheckUtils]: 29: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,728 INFO L290 TraceCheckUtils]: 30: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,728 INFO L290 TraceCheckUtils]: 31: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,729 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4827#true} {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} #87#return; {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-28 05:40:34,729 INFO L272 TraceCheckUtils]: 33: Hoare triple {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,729 INFO L290 TraceCheckUtils]: 34: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,729 INFO L290 TraceCheckUtils]: 35: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,730 INFO L290 TraceCheckUtils]: 36: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,730 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4827#true} {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} #89#return; {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-28 05:40:34,730 INFO L290 TraceCheckUtils]: 38: Hoare triple {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} assume !false; {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-28 05:40:34,731 INFO L290 TraceCheckUtils]: 39: Hoare triple {4917#(and (<= main_~b~0 1) (<= 1 main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} is VALID [2022-04-28 05:40:34,731 INFO L290 TraceCheckUtils]: 40: Hoare triple {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} assume !false; {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} is VALID [2022-04-28 05:40:34,731 INFO L272 TraceCheckUtils]: 41: Hoare triple {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,731 INFO L290 TraceCheckUtils]: 42: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,732 INFO L290 TraceCheckUtils]: 43: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,732 INFO L290 TraceCheckUtils]: 44: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,732 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4827#true} {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} #91#return; {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} is VALID [2022-04-28 05:40:34,732 INFO L272 TraceCheckUtils]: 46: Hoare triple {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,732 INFO L290 TraceCheckUtils]: 47: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,733 INFO L290 TraceCheckUtils]: 48: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,733 INFO L290 TraceCheckUtils]: 49: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,733 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4827#true} {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} #93#return; {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} is VALID [2022-04-28 05:40:34,733 INFO L272 TraceCheckUtils]: 51: Hoare triple {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,734 INFO L290 TraceCheckUtils]: 52: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,734 INFO L290 TraceCheckUtils]: 53: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,734 INFO L290 TraceCheckUtils]: 54: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,734 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4827#true} {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} #95#return; {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} is VALID [2022-04-28 05:40:34,735 INFO L272 TraceCheckUtils]: 56: Hoare triple {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:34,735 INFO L290 TraceCheckUtils]: 57: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:34,735 INFO L290 TraceCheckUtils]: 58: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:34,735 INFO L290 TraceCheckUtils]: 59: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:34,736 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4827#true} {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} #97#return; {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} is VALID [2022-04-28 05:40:34,736 INFO L290 TraceCheckUtils]: 61: Hoare triple {4954#(and (<= 1 main_~c~0) (<= main_~b~0 1))} assume !(~c~0 >= ~b~0); {4828#false} is VALID [2022-04-28 05:40:34,736 INFO L290 TraceCheckUtils]: 62: Hoare triple {4828#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4828#false} is VALID [2022-04-28 05:40:34,736 INFO L290 TraceCheckUtils]: 63: Hoare triple {4828#false} assume !false; {4828#false} is VALID [2022-04-28 05:40:34,736 INFO L290 TraceCheckUtils]: 64: Hoare triple {4828#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4828#false} is VALID [2022-04-28 05:40:34,736 INFO L290 TraceCheckUtils]: 65: Hoare triple {4828#false} assume !false; {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L272 TraceCheckUtils]: 66: Hoare triple {4828#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L290 TraceCheckUtils]: 67: Hoare triple {4828#false} ~cond := #in~cond; {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L290 TraceCheckUtils]: 68: Hoare triple {4828#false} assume !(0 == ~cond); {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L290 TraceCheckUtils]: 69: Hoare triple {4828#false} assume true; {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4828#false} {4828#false} #91#return; {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L272 TraceCheckUtils]: 71: Hoare triple {4828#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L290 TraceCheckUtils]: 72: Hoare triple {4828#false} ~cond := #in~cond; {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L290 TraceCheckUtils]: 73: Hoare triple {4828#false} assume 0 == ~cond; {4828#false} is VALID [2022-04-28 05:40:34,737 INFO L290 TraceCheckUtils]: 74: Hoare triple {4828#false} assume !false; {4828#false} is VALID [2022-04-28 05:40:34,738 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 35 proven. 18 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2022-04-28 05:40:34,738 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:35,168 INFO L290 TraceCheckUtils]: 74: Hoare triple {4828#false} assume !false; {4828#false} is VALID [2022-04-28 05:40:35,168 INFO L290 TraceCheckUtils]: 73: Hoare triple {4828#false} assume 0 == ~cond; {4828#false} is VALID [2022-04-28 05:40:35,168 INFO L290 TraceCheckUtils]: 72: Hoare triple {4828#false} ~cond := #in~cond; {4828#false} is VALID [2022-04-28 05:40:35,168 INFO L272 TraceCheckUtils]: 71: Hoare triple {4828#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4828#false} is VALID [2022-04-28 05:40:35,168 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4827#true} {4828#false} #91#return; {4828#false} is VALID [2022-04-28 05:40:35,168 INFO L290 TraceCheckUtils]: 69: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,168 INFO L290 TraceCheckUtils]: 68: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,168 INFO L290 TraceCheckUtils]: 67: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,169 INFO L272 TraceCheckUtils]: 66: Hoare triple {4828#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,169 INFO L290 TraceCheckUtils]: 65: Hoare triple {4828#false} assume !false; {4828#false} is VALID [2022-04-28 05:40:35,169 INFO L290 TraceCheckUtils]: 64: Hoare triple {4828#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4828#false} is VALID [2022-04-28 05:40:35,169 INFO L290 TraceCheckUtils]: 63: Hoare triple {4828#false} assume !false; {4828#false} is VALID [2022-04-28 05:40:35,169 INFO L290 TraceCheckUtils]: 62: Hoare triple {4828#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4828#false} is VALID [2022-04-28 05:40:35,169 INFO L290 TraceCheckUtils]: 61: Hoare triple {5099#(<= main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4828#false} is VALID [2022-04-28 05:40:35,170 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4827#true} {5099#(<= main_~b~0 main_~c~0)} #97#return; {5099#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:35,170 INFO L290 TraceCheckUtils]: 59: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,170 INFO L290 TraceCheckUtils]: 58: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,170 INFO L290 TraceCheckUtils]: 57: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,171 INFO L272 TraceCheckUtils]: 56: Hoare triple {5099#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,171 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4827#true} {5099#(<= main_~b~0 main_~c~0)} #95#return; {5099#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:35,171 INFO L290 TraceCheckUtils]: 54: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,171 INFO L290 TraceCheckUtils]: 53: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,172 INFO L290 TraceCheckUtils]: 52: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,172 INFO L272 TraceCheckUtils]: 51: Hoare triple {5099#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,173 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4827#true} {5099#(<= main_~b~0 main_~c~0)} #93#return; {5099#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:35,173 INFO L290 TraceCheckUtils]: 49: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,173 INFO L290 TraceCheckUtils]: 48: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,173 INFO L290 TraceCheckUtils]: 47: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,173 INFO L272 TraceCheckUtils]: 46: Hoare triple {5099#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,174 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4827#true} {5099#(<= main_~b~0 main_~c~0)} #91#return; {5099#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:35,174 INFO L290 TraceCheckUtils]: 44: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,174 INFO L290 TraceCheckUtils]: 43: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,174 INFO L290 TraceCheckUtils]: 42: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,174 INFO L272 TraceCheckUtils]: 41: Hoare triple {5099#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,174 INFO L290 TraceCheckUtils]: 40: Hoare triple {5099#(<= main_~b~0 main_~c~0)} assume !false; {5099#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:35,175 INFO L290 TraceCheckUtils]: 39: Hoare triple {5166#(<= main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5099#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:35,175 INFO L290 TraceCheckUtils]: 38: Hoare triple {5166#(<= main_~b~0 main_~a~0)} assume !false; {5166#(<= main_~b~0 main_~a~0)} is VALID [2022-04-28 05:40:35,176 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4827#true} {5166#(<= main_~b~0 main_~a~0)} #89#return; {5166#(<= main_~b~0 main_~a~0)} is VALID [2022-04-28 05:40:35,176 INFO L290 TraceCheckUtils]: 36: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,176 INFO L290 TraceCheckUtils]: 35: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,176 INFO L272 TraceCheckUtils]: 33: Hoare triple {5166#(<= main_~b~0 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,177 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4827#true} {5166#(<= main_~b~0 main_~a~0)} #87#return; {5166#(<= main_~b~0 main_~a~0)} is VALID [2022-04-28 05:40:35,177 INFO L290 TraceCheckUtils]: 31: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,177 INFO L290 TraceCheckUtils]: 30: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,177 INFO L290 TraceCheckUtils]: 29: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,177 INFO L272 TraceCheckUtils]: 28: Hoare triple {5166#(<= main_~b~0 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,178 INFO L290 TraceCheckUtils]: 27: Hoare triple {5203#(<= main_~y~0 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5166#(<= main_~b~0 main_~a~0)} is VALID [2022-04-28 05:40:35,179 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4827#true} {5203#(<= main_~y~0 main_~x~0)} #85#return; {5203#(<= main_~y~0 main_~x~0)} is VALID [2022-04-28 05:40:35,179 INFO L290 TraceCheckUtils]: 25: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,179 INFO L290 TraceCheckUtils]: 24: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,179 INFO L290 TraceCheckUtils]: 23: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,179 INFO L272 TraceCheckUtils]: 22: Hoare triple {5203#(<= main_~y~0 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,180 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} {5222#(<= main_~y~0 1)} #83#return; {5203#(<= main_~y~0 main_~x~0)} is VALID [2022-04-28 05:40:35,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:35,181 INFO L290 TraceCheckUtils]: 19: Hoare triple {5232#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:35,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {4827#true} ~cond := #in~cond; {5232#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:40:35,181 INFO L272 TraceCheckUtils]: 17: Hoare triple {5222#(<= main_~y~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,182 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} {4827#true} #81#return; {5222#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:35,182 INFO L290 TraceCheckUtils]: 15: Hoare triple {4875#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:35,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {5232#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {4875#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:35,183 INFO L290 TraceCheckUtils]: 13: Hoare triple {4827#true} ~cond := #in~cond; {5232#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:40:35,183 INFO L272 TraceCheckUtils]: 12: Hoare triple {4827#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,183 INFO L290 TraceCheckUtils]: 11: Hoare triple {4827#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4827#true} is VALID [2022-04-28 05:40:35,183 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4827#true} {4827#true} #79#return; {4827#true} is VALID [2022-04-28 05:40:35,183 INFO L290 TraceCheckUtils]: 9: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,183 INFO L290 TraceCheckUtils]: 8: Hoare triple {4827#true} assume !(0 == ~cond); {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L290 TraceCheckUtils]: 7: Hoare triple {4827#true} ~cond := #in~cond; {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L272 TraceCheckUtils]: 6: Hoare triple {4827#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L290 TraceCheckUtils]: 5: Hoare triple {4827#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L272 TraceCheckUtils]: 4: Hoare triple {4827#true} call #t~ret6 := main(); {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4827#true} {4827#true} #103#return; {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L290 TraceCheckUtils]: 2: Hoare triple {4827#true} assume true; {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L290 TraceCheckUtils]: 1: Hoare triple {4827#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4827#true} is VALID [2022-04-28 05:40:35,184 INFO L272 TraceCheckUtils]: 0: Hoare triple {4827#true} call ULTIMATE.init(); {4827#true} is VALID [2022-04-28 05:40:35,185 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 21 proven. 18 refuted. 0 times theorem prover too weak. 76 trivial. 0 not checked. [2022-04-28 05:40:35,185 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:35,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [317890052] [2022-04-28 05:40:35,185 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:35,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1800653455] [2022-04-28 05:40:35,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1800653455] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:40:35,185 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:40:35,185 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 13 [2022-04-28 05:40:35,188 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:35,188 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [304362098] [2022-04-28 05:40:35,188 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [304362098] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:35,188 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:35,188 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:40:35,188 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1904271144] [2022-04-28 05:40:35,188 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:35,189 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) Word has length 75 [2022-04-28 05:40:35,190 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:35,190 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 05:40:35,231 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:35,231 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:40:35,231 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:35,232 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:40:35,232 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:40:35,232 INFO L87 Difference]: Start difference. First operand 89 states and 122 transitions. Second operand has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 05:40:35,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:35,742 INFO L93 Difference]: Finished difference Result 111 states and 149 transitions. [2022-04-28 05:40:35,743 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:40:35,743 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) Word has length 75 [2022-04-28 05:40:35,743 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:35,743 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 05:40:35,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 94 transitions. [2022-04-28 05:40:35,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 05:40:35,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 94 transitions. [2022-04-28 05:40:35,747 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 94 transitions. [2022-04-28 05:40:35,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:35,825 INFO L225 Difference]: With dead ends: 111 [2022-04-28 05:40:35,825 INFO L226 Difference]: Without dead ends: 66 [2022-04-28 05:40:35,827 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 152 GetRequests, 138 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=185, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:40:35,828 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 21 mSDsluCounter, 136 mSDsCounter, 0 mSdLazyCounter, 129 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 178 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 129 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:35,828 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 178 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 129 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:40:35,828 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-28 05:40:35,952 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 65. [2022-04-28 05:40:35,953 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:35,953 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 65 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 22 states have call successors, (22), 8 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:35,953 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 65 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 22 states have call successors, (22), 8 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:35,953 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 65 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 22 states have call successors, (22), 8 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:35,955 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:35,955 INFO L93 Difference]: Finished difference Result 66 states and 82 transitions. [2022-04-28 05:40:35,956 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 82 transitions. [2022-04-28 05:40:35,956 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:35,956 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:35,956 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 22 states have call successors, (22), 8 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 66 states. [2022-04-28 05:40:35,956 INFO L87 Difference]: Start difference. First operand has 65 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 22 states have call successors, (22), 8 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 66 states. [2022-04-28 05:40:35,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:35,959 INFO L93 Difference]: Finished difference Result 66 states and 82 transitions. [2022-04-28 05:40:35,959 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 82 transitions. [2022-04-28 05:40:35,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:35,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:35,959 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:35,959 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:35,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 22 states have call successors, (22), 8 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:35,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 81 transitions. [2022-04-28 05:40:35,963 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 81 transitions. Word has length 75 [2022-04-28 05:40:35,964 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:35,964 INFO L495 AbstractCegarLoop]: Abstraction has 65 states and 81 transitions. [2022-04-28 05:40:35,964 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 05:40:35,964 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 81 transitions. [2022-04-28 05:40:36,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:36,095 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 81 transitions. [2022-04-28 05:40:36,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:40:36,096 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:36,096 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:36,113 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:40:36,303 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:40:36,303 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:36,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:36,304 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 1 times [2022-04-28 05:40:36,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:36,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [804556600] [2022-04-28 05:40:36,304 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:36,304 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 2 times [2022-04-28 05:40:36,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:36,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1135644363] [2022-04-28 05:40:36,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:36,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:36,322 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:36,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1267301157] [2022-04-28 05:40:36,322 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:40:36,345 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:36,345 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:36,346 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:40:36,347 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:40:36,406 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:40:36,406 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:36,407 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-28 05:40:36,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:36,429 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:38,272 INFO L272 TraceCheckUtils]: 0: Hoare triple {5779#true} call ULTIMATE.init(); {5779#true} is VALID [2022-04-28 05:40:38,272 INFO L290 TraceCheckUtils]: 1: Hoare triple {5779#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L290 TraceCheckUtils]: 2: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5779#true} {5779#true} #103#return; {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L272 TraceCheckUtils]: 4: Hoare triple {5779#true} call #t~ret6 := main(); {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L290 TraceCheckUtils]: 5: Hoare triple {5779#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L272 TraceCheckUtils]: 6: Hoare triple {5779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L290 TraceCheckUtils]: 7: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5779#true} {5779#true} #79#return; {5779#true} is VALID [2022-04-28 05:40:38,273 INFO L290 TraceCheckUtils]: 11: Hoare triple {5779#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5779#true} is VALID [2022-04-28 05:40:38,274 INFO L272 TraceCheckUtils]: 12: Hoare triple {5779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,274 INFO L290 TraceCheckUtils]: 13: Hoare triple {5779#true} ~cond := #in~cond; {5823#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:38,274 INFO L290 TraceCheckUtils]: 14: Hoare triple {5823#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5827#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:38,275 INFO L290 TraceCheckUtils]: 15: Hoare triple {5827#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5827#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:38,275 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5827#(not (= |assume_abort_if_not_#in~cond| 0))} {5779#true} #81#return; {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:38,275 INFO L272 TraceCheckUtils]: 17: Hoare triple {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,276 INFO L290 TraceCheckUtils]: 18: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,276 INFO L290 TraceCheckUtils]: 19: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,276 INFO L290 TraceCheckUtils]: 20: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,276 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5779#true} {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #83#return; {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:38,276 INFO L272 TraceCheckUtils]: 22: Hoare triple {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,277 INFO L290 TraceCheckUtils]: 23: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,277 INFO L290 TraceCheckUtils]: 24: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,277 INFO L290 TraceCheckUtils]: 25: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,277 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5779#true} {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #85#return; {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:38,278 INFO L290 TraceCheckUtils]: 27: Hoare triple {5834#(and (<= 0 main_~y~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,278 INFO L272 TraceCheckUtils]: 28: Hoare triple {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,278 INFO L290 TraceCheckUtils]: 29: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,278 INFO L290 TraceCheckUtils]: 30: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,278 INFO L290 TraceCheckUtils]: 31: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,279 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5779#true} {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} #87#return; {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,279 INFO L272 TraceCheckUtils]: 33: Hoare triple {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,279 INFO L290 TraceCheckUtils]: 34: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,279 INFO L290 TraceCheckUtils]: 35: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,279 INFO L290 TraceCheckUtils]: 36: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,280 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5779#true} {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} #89#return; {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,281 INFO L290 TraceCheckUtils]: 38: Hoare triple {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} assume !false; {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,281 INFO L290 TraceCheckUtils]: 39: Hoare triple {5868#(and (<= 0 main_~y~0) (= 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_~y~0 1) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,282 INFO L290 TraceCheckUtils]: 40: Hoare triple {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} assume !false; {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,282 INFO L272 TraceCheckUtils]: 41: Hoare triple {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,282 INFO L290 TraceCheckUtils]: 42: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,282 INFO L290 TraceCheckUtils]: 43: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,282 INFO L290 TraceCheckUtils]: 44: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,283 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5779#true} {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} #91#return; {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,283 INFO L272 TraceCheckUtils]: 46: Hoare triple {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,283 INFO L290 TraceCheckUtils]: 47: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,283 INFO L290 TraceCheckUtils]: 48: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,283 INFO L290 TraceCheckUtils]: 49: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,284 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5779#true} {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} #93#return; {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,284 INFO L272 TraceCheckUtils]: 51: Hoare triple {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,284 INFO L290 TraceCheckUtils]: 52: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,284 INFO L290 TraceCheckUtils]: 53: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,284 INFO L290 TraceCheckUtils]: 54: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,285 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5779#true} {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} #95#return; {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,285 INFO L272 TraceCheckUtils]: 56: Hoare triple {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,285 INFO L290 TraceCheckUtils]: 57: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,285 INFO L290 TraceCheckUtils]: 58: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,285 INFO L290 TraceCheckUtils]: 59: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,286 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5779#true} {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} #97#return; {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,287 INFO L290 TraceCheckUtils]: 61: Hoare triple {5905#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,287 INFO L290 TraceCheckUtils]: 62: Hoare triple {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} assume !false; {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,288 INFO L272 TraceCheckUtils]: 63: Hoare triple {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,288 INFO L290 TraceCheckUtils]: 64: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,288 INFO L290 TraceCheckUtils]: 65: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,288 INFO L290 TraceCheckUtils]: 66: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,289 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {5779#true} {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} #91#return; {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,289 INFO L272 TraceCheckUtils]: 68: Hoare triple {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,289 INFO L290 TraceCheckUtils]: 69: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,289 INFO L290 TraceCheckUtils]: 70: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,289 INFO L290 TraceCheckUtils]: 71: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,290 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {5779#true} {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} #93#return; {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,290 INFO L272 TraceCheckUtils]: 73: Hoare triple {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,290 INFO L290 TraceCheckUtils]: 74: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,290 INFO L290 TraceCheckUtils]: 75: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,290 INFO L290 TraceCheckUtils]: 76: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,291 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {5779#true} {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} #95#return; {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,291 INFO L272 TraceCheckUtils]: 78: Hoare triple {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:38,291 INFO L290 TraceCheckUtils]: 79: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:38,291 INFO L290 TraceCheckUtils]: 80: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:38,291 INFO L290 TraceCheckUtils]: 81: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:38,292 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {5779#true} {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} #97#return; {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,293 INFO L290 TraceCheckUtils]: 83: Hoare triple {5972#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} is VALID [2022-04-28 05:40:38,294 INFO L290 TraceCheckUtils]: 84: Hoare triple {6039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 0) (<= main_~y~0 1) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6043#(and (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:38,295 INFO L290 TraceCheckUtils]: 85: Hoare triple {6043#(and (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))} assume !false; {6043#(and (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:38,295 INFO L290 TraceCheckUtils]: 86: Hoare triple {6043#(and (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))} assume !(0 != ~b~0); {6043#(and (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:38,296 INFO L272 TraceCheckUtils]: 87: Hoare triple {6043#(and (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1)) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:40:38,297 INFO L290 TraceCheckUtils]: 88: Hoare triple {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6057#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:38,297 INFO L290 TraceCheckUtils]: 89: Hoare triple {6057#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5780#false} is VALID [2022-04-28 05:40:38,297 INFO L290 TraceCheckUtils]: 90: Hoare triple {5780#false} assume !false; {5780#false} is VALID [2022-04-28 05:40:38,298 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 19 proven. 20 refuted. 0 times theorem prover too weak. 157 trivial. 0 not checked. [2022-04-28 05:40:38,298 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:39,494 INFO L290 TraceCheckUtils]: 90: Hoare triple {5780#false} assume !false; {5780#false} is VALID [2022-04-28 05:40:39,494 INFO L290 TraceCheckUtils]: 89: Hoare triple {6057#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5780#false} is VALID [2022-04-28 05:40:39,495 INFO L290 TraceCheckUtils]: 88: Hoare triple {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6057#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:39,495 INFO L272 TraceCheckUtils]: 87: Hoare triple {6073#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:40:39,496 INFO L290 TraceCheckUtils]: 86: Hoare triple {6073#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} assume !(0 != ~b~0); {6073#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-28 05:40:39,496 INFO L290 TraceCheckUtils]: 85: Hoare triple {6073#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} assume !false; {6073#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-28 05:40:41,497 WARN L290 TraceCheckUtils]: 84: Hoare triple {6083#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6073#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is UNKNOWN [2022-04-28 05:40:41,498 INFO L290 TraceCheckUtils]: 83: Hoare triple {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {6083#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0)} is VALID [2022-04-28 05:40:41,499 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {5779#true} {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #97#return; {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:40:41,499 INFO L290 TraceCheckUtils]: 81: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,499 INFO L290 TraceCheckUtils]: 80: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,499 INFO L290 TraceCheckUtils]: 79: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,499 INFO L272 TraceCheckUtils]: 78: Hoare triple {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,500 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {5779#true} {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #95#return; {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:40:41,500 INFO L290 TraceCheckUtils]: 76: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,500 INFO L290 TraceCheckUtils]: 75: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,500 INFO L290 TraceCheckUtils]: 74: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,500 INFO L272 TraceCheckUtils]: 73: Hoare triple {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,501 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {5779#true} {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #93#return; {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:40:41,501 INFO L290 TraceCheckUtils]: 71: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,501 INFO L290 TraceCheckUtils]: 70: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,501 INFO L290 TraceCheckUtils]: 69: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,501 INFO L272 TraceCheckUtils]: 68: Hoare triple {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,502 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {5779#true} {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #91#return; {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:40:41,502 INFO L290 TraceCheckUtils]: 66: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,502 INFO L290 TraceCheckUtils]: 65: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,502 INFO L290 TraceCheckUtils]: 64: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,502 INFO L272 TraceCheckUtils]: 63: Hoare triple {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,502 INFO L290 TraceCheckUtils]: 62: Hoare triple {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !false; {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:40:41,611 INFO L290 TraceCheckUtils]: 61: Hoare triple {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {6087#(or (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:40:41,611 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5779#true} {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #97#return; {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 05:40:41,612 INFO L290 TraceCheckUtils]: 59: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,612 INFO L290 TraceCheckUtils]: 58: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,612 INFO L290 TraceCheckUtils]: 57: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,612 INFO L272 TraceCheckUtils]: 56: Hoare triple {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,612 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5779#true} {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #95#return; {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 05:40:41,613 INFO L290 TraceCheckUtils]: 54: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,613 INFO L290 TraceCheckUtils]: 53: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,613 INFO L290 TraceCheckUtils]: 52: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,613 INFO L272 TraceCheckUtils]: 51: Hoare triple {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,613 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5779#true} {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #93#return; {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 05:40:41,614 INFO L290 TraceCheckUtils]: 49: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,614 INFO L290 TraceCheckUtils]: 48: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,614 INFO L290 TraceCheckUtils]: 47: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,614 INFO L272 TraceCheckUtils]: 46: Hoare triple {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,614 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5779#true} {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #91#return; {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 05:40:41,614 INFO L290 TraceCheckUtils]: 44: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,615 INFO L290 TraceCheckUtils]: 43: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,615 INFO L290 TraceCheckUtils]: 42: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,615 INFO L272 TraceCheckUtils]: 41: Hoare triple {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,615 INFO L290 TraceCheckUtils]: 40: Hoare triple {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} assume !false; {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 05:40:41,616 INFO L290 TraceCheckUtils]: 39: Hoare triple {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6154#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 05:40:41,616 INFO L290 TraceCheckUtils]: 38: Hoare triple {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} assume !false; {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:40:41,617 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5779#true} {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} #89#return; {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:40:41,617 INFO L290 TraceCheckUtils]: 36: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,617 INFO L290 TraceCheckUtils]: 35: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,617 INFO L290 TraceCheckUtils]: 34: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,617 INFO L272 TraceCheckUtils]: 33: Hoare triple {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,618 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5779#true} {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} #87#return; {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:40:41,618 INFO L290 TraceCheckUtils]: 31: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,618 INFO L290 TraceCheckUtils]: 30: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,618 INFO L290 TraceCheckUtils]: 29: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,618 INFO L272 TraceCheckUtils]: 28: Hoare triple {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,619 INFO L290 TraceCheckUtils]: 27: Hoare triple {6258#(<= main_~y~0 1)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {6221#(or (not (<= main_~b~0 main_~a~0)) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:40:41,619 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5779#true} {6258#(<= main_~y~0 1)} #85#return; {6258#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:41,620 INFO L290 TraceCheckUtils]: 25: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,620 INFO L290 TraceCheckUtils]: 24: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,620 INFO L290 TraceCheckUtils]: 23: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,620 INFO L272 TraceCheckUtils]: 22: Hoare triple {6258#(<= main_~y~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,620 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5779#true} {6258#(<= main_~y~0 1)} #83#return; {6258#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:41,621 INFO L290 TraceCheckUtils]: 20: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,621 INFO L290 TraceCheckUtils]: 19: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,621 INFO L290 TraceCheckUtils]: 18: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,621 INFO L272 TraceCheckUtils]: 17: Hoare triple {6258#(<= main_~y~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,621 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5827#(not (= |assume_abort_if_not_#in~cond| 0))} {5779#true} #81#return; {6258#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:41,622 INFO L290 TraceCheckUtils]: 15: Hoare triple {5827#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5827#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:41,622 INFO L290 TraceCheckUtils]: 14: Hoare triple {6301#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {5827#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:41,623 INFO L290 TraceCheckUtils]: 13: Hoare triple {5779#true} ~cond := #in~cond; {6301#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:40:41,623 INFO L272 TraceCheckUtils]: 12: Hoare triple {5779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L290 TraceCheckUtils]: 11: Hoare triple {5779#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5779#true} {5779#true} #79#return; {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L290 TraceCheckUtils]: 9: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L290 TraceCheckUtils]: 8: Hoare triple {5779#true} assume !(0 == ~cond); {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L290 TraceCheckUtils]: 7: Hoare triple {5779#true} ~cond := #in~cond; {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L272 TraceCheckUtils]: 6: Hoare triple {5779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {5779#true} is VALID [2022-04-28 05:40:41,623 INFO L290 TraceCheckUtils]: 5: Hoare triple {5779#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5779#true} is VALID [2022-04-28 05:40:41,624 INFO L272 TraceCheckUtils]: 4: Hoare triple {5779#true} call #t~ret6 := main(); {5779#true} is VALID [2022-04-28 05:40:41,624 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5779#true} {5779#true} #103#return; {5779#true} is VALID [2022-04-28 05:40:41,624 INFO L290 TraceCheckUtils]: 2: Hoare triple {5779#true} assume true; {5779#true} is VALID [2022-04-28 05:40:41,624 INFO L290 TraceCheckUtils]: 1: Hoare triple {5779#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5779#true} is VALID [2022-04-28 05:40:41,624 INFO L272 TraceCheckUtils]: 0: Hoare triple {5779#true} call ULTIMATE.init(); {5779#true} is VALID [2022-04-28 05:40:41,624 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 19 proven. 20 refuted. 0 times theorem prover too weak. 157 trivial. 0 not checked. [2022-04-28 05:40:41,625 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:41,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1135644363] [2022-04-28 05:40:41,625 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:41,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1267301157] [2022-04-28 05:40:41,625 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1267301157] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:40:41,625 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:40:41,625 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 19 [2022-04-28 05:40:41,625 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:41,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [804556600] [2022-04-28 05:40:41,626 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [804556600] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:41,626 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:41,626 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:40:41,626 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [905068465] [2022-04-28 05:40:41,626 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:41,626 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 91 [2022-04-28 05:40:41,627 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:41,627 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:40:41,684 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:41,684 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:40:41,684 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:41,684 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:40:41,684 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=286, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:40:41,684 INFO L87 Difference]: Start difference. First operand 65 states and 81 transitions. Second operand has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:40:43,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:43,480 INFO L93 Difference]: Finished difference Result 94 states and 120 transitions. [2022-04-28 05:40:43,480 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:40:43,481 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 91 [2022-04-28 05:40:43,481 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:43,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:40:43,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 105 transitions. [2022-04-28 05:40:43,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:40:43,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 105 transitions. [2022-04-28 05:40:43,485 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 105 transitions. [2022-04-28 05:40:43,596 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:40:43,597 INFO L225 Difference]: With dead ends: 94 [2022-04-28 05:40:43,598 INFO L226 Difference]: Without dead ends: 92 [2022-04-28 05:40:43,598 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 163 SyntacticMatches, 1 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=92, Invalid=460, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:40:43,598 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 30 mSDsluCounter, 258 mSDsCounter, 0 mSdLazyCounter, 458 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 316 SdHoareTripleChecker+Invalid, 477 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 458 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:43,599 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [44 Valid, 316 Invalid, 477 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 458 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 05:40:43,599 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-04-28 05:40:43,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 83. [2022-04-28 05:40:43,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:43,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 83 states, 46 states have (on average 1.1304347826086956) internal successors, (52), 48 states have internal predecessors, (52), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:40:43,777 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 83 states, 46 states have (on average 1.1304347826086956) internal successors, (52), 48 states have internal predecessors, (52), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:40:43,778 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 83 states, 46 states have (on average 1.1304347826086956) internal successors, (52), 48 states have internal predecessors, (52), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:40:43,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:43,780 INFO L93 Difference]: Finished difference Result 92 states and 118 transitions. [2022-04-28 05:40:43,780 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 118 transitions. [2022-04-28 05:40:43,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:43,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:43,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 46 states have (on average 1.1304347826086956) internal successors, (52), 48 states have internal predecessors, (52), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) Second operand 92 states. [2022-04-28 05:40:43,781 INFO L87 Difference]: Start difference. First operand has 83 states, 46 states have (on average 1.1304347826086956) internal successors, (52), 48 states have internal predecessors, (52), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) Second operand 92 states. [2022-04-28 05:40:43,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:43,787 INFO L93 Difference]: Finished difference Result 92 states and 118 transitions. [2022-04-28 05:40:43,788 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 118 transitions. [2022-04-28 05:40:43,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:43,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:43,788 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:43,788 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:43,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 46 states have (on average 1.1304347826086956) internal successors, (52), 48 states have internal predecessors, (52), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-28 05:40:43,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 104 transitions. [2022-04-28 05:40:43,791 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 104 transitions. Word has length 91 [2022-04-28 05:40:43,791 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:43,791 INFO L495 AbstractCegarLoop]: Abstraction has 83 states and 104 transitions. [2022-04-28 05:40:43,791 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 10 states have internal predecessors, (26), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:40:43,791 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 83 states and 104 transitions. [2022-04-28 05:40:43,936 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:43,936 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 104 transitions. [2022-04-28 05:40:43,937 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-04-28 05:40:43,937 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:43,937 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:43,954 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:40:44,144 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:40:44,144 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:44,144 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:44,144 INFO L85 PathProgramCache]: Analyzing trace with hash -2082914122, now seen corresponding path program 1 times [2022-04-28 05:40:44,144 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:44,144 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [409569930] [2022-04-28 05:40:44,145 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:44,145 INFO L85 PathProgramCache]: Analyzing trace with hash -2082914122, now seen corresponding path program 2 times [2022-04-28 05:40:44,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:44,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [997277627] [2022-04-28 05:40:44,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:44,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:44,159 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:44,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1863383757] [2022-04-28 05:40:44,159 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:40:44,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:44,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:44,160 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:40:44,187 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:40:44,228 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:40:44,229 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:44,230 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-28 05:40:44,247 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:44,251 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:45,379 INFO L272 TraceCheckUtils]: 0: Hoare triple {6891#true} call ULTIMATE.init(); {6891#true} is VALID [2022-04-28 05:40:45,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {6891#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6891#true} is VALID [2022-04-28 05:40:45,379 INFO L290 TraceCheckUtils]: 2: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,379 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6891#true} {6891#true} #103#return; {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {6891#true} call #t~ret6 := main(); {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {6891#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L272 TraceCheckUtils]: 6: Hoare triple {6891#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L290 TraceCheckUtils]: 8: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6891#true} {6891#true} #79#return; {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L290 TraceCheckUtils]: 11: Hoare triple {6891#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L272 TraceCheckUtils]: 12: Hoare triple {6891#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,380 INFO L290 TraceCheckUtils]: 13: Hoare triple {6891#true} ~cond := #in~cond; {6935#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:45,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {6935#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6939#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:45,381 INFO L290 TraceCheckUtils]: 15: Hoare triple {6939#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6939#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:45,381 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6939#(not (= |assume_abort_if_not_#in~cond| 0))} {6891#true} #81#return; {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,381 INFO L272 TraceCheckUtils]: 17: Hoare triple {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L290 TraceCheckUtils]: 18: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L290 TraceCheckUtils]: 19: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L290 TraceCheckUtils]: 20: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6891#true} {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #83#return; {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,382 INFO L272 TraceCheckUtils]: 22: Hoare triple {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L290 TraceCheckUtils]: 23: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L290 TraceCheckUtils]: 24: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,382 INFO L290 TraceCheckUtils]: 25: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,383 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6891#true} {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #85#return; {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,383 INFO L290 TraceCheckUtils]: 27: Hoare triple {6946#(and (<= 0 main_~y~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,383 INFO L272 TraceCheckUtils]: 28: Hoare triple {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,383 INFO L290 TraceCheckUtils]: 29: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,383 INFO L290 TraceCheckUtils]: 30: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,384 INFO L290 TraceCheckUtils]: 31: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,384 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6891#true} {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} #87#return; {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,384 INFO L272 TraceCheckUtils]: 33: Hoare triple {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,384 INFO L290 TraceCheckUtils]: 34: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,384 INFO L290 TraceCheckUtils]: 35: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,384 INFO L290 TraceCheckUtils]: 36: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,385 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6891#true} {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} #89#return; {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,385 INFO L290 TraceCheckUtils]: 38: Hoare triple {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} assume !false; {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,386 INFO L290 TraceCheckUtils]: 39: Hoare triple {6980#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,386 INFO L290 TraceCheckUtils]: 40: Hoare triple {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} assume !false; {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,386 INFO L272 TraceCheckUtils]: 41: Hoare triple {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,386 INFO L290 TraceCheckUtils]: 42: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,386 INFO L290 TraceCheckUtils]: 43: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,386 INFO L290 TraceCheckUtils]: 44: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,387 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6891#true} {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} #91#return; {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,387 INFO L272 TraceCheckUtils]: 46: Hoare triple {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,387 INFO L290 TraceCheckUtils]: 47: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,387 INFO L290 TraceCheckUtils]: 48: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,387 INFO L290 TraceCheckUtils]: 49: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,389 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6891#true} {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} #93#return; {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,389 INFO L272 TraceCheckUtils]: 51: Hoare triple {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,389 INFO L290 TraceCheckUtils]: 52: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,389 INFO L290 TraceCheckUtils]: 53: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,389 INFO L290 TraceCheckUtils]: 54: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,390 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {6891#true} {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} #95#return; {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,390 INFO L272 TraceCheckUtils]: 56: Hoare triple {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,390 INFO L290 TraceCheckUtils]: 57: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,390 INFO L290 TraceCheckUtils]: 58: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,390 INFO L290 TraceCheckUtils]: 59: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,393 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {6891#true} {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} #97#return; {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,394 INFO L290 TraceCheckUtils]: 61: Hoare triple {7017#(and (<= 0 main_~y~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,394 INFO L290 TraceCheckUtils]: 62: Hoare triple {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,394 INFO L272 TraceCheckUtils]: 63: Hoare triple {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,394 INFO L290 TraceCheckUtils]: 64: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,394 INFO L290 TraceCheckUtils]: 65: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,394 INFO L290 TraceCheckUtils]: 66: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,395 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {6891#true} {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #91#return; {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,395 INFO L272 TraceCheckUtils]: 68: Hoare triple {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,395 INFO L290 TraceCheckUtils]: 69: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,395 INFO L290 TraceCheckUtils]: 70: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,395 INFO L290 TraceCheckUtils]: 71: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,396 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {6891#true} {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #93#return; {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,396 INFO L272 TraceCheckUtils]: 73: Hoare triple {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,396 INFO L290 TraceCheckUtils]: 74: Hoare triple {6891#true} ~cond := #in~cond; {7124#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:45,397 INFO L290 TraceCheckUtils]: 75: Hoare triple {7124#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:40:45,397 INFO L290 TraceCheckUtils]: 76: Hoare triple {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:40:45,398 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} {7084#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #95#return; {7135#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,398 INFO L272 TraceCheckUtils]: 78: Hoare triple {7135#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,398 INFO L290 TraceCheckUtils]: 79: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,398 INFO L290 TraceCheckUtils]: 80: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,398 INFO L290 TraceCheckUtils]: 81: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,399 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {6891#true} {7135#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} #97#return; {7135#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,399 INFO L290 TraceCheckUtils]: 83: Hoare triple {7135#(and (<= main_~x~0 (+ main_~c~0 main_~b~0)) (<= 0 main_~y~0) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} assume !(~c~0 >= ~b~0); {7154#(and (< main_~x~0 (* main_~b~0 2)) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,400 INFO L290 TraceCheckUtils]: 84: Hoare triple {7154#(and (< main_~x~0 (* main_~b~0 2)) (<= main_~b~0 main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (<= main_~y~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,401 INFO L290 TraceCheckUtils]: 85: Hoare triple {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} assume !false; {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,401 INFO L290 TraceCheckUtils]: 86: Hoare triple {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} assume !(0 != ~b~0); {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,401 INFO L272 TraceCheckUtils]: 87: Hoare triple {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:45,401 INFO L290 TraceCheckUtils]: 88: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:45,402 INFO L290 TraceCheckUtils]: 89: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:45,402 INFO L290 TraceCheckUtils]: 90: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:45,402 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {6891#true} {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} #99#return; {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:45,403 INFO L272 TraceCheckUtils]: 92: Hoare triple {7158#(and (< main_~x~0 (* main_~a~0 2)) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (<= main_~a~0 main_~x~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 + ~r~0 * ~y~0 == ~a~0 then 1 else 0)); {7183#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:40:45,403 INFO L290 TraceCheckUtils]: 93: Hoare triple {7183#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7187#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:45,403 INFO L290 TraceCheckUtils]: 94: Hoare triple {7187#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6892#false} is VALID [2022-04-28 05:40:45,404 INFO L290 TraceCheckUtils]: 95: Hoare triple {6892#false} assume !false; {6892#false} is VALID [2022-04-28 05:40:45,404 INFO L134 CoverageAnalysis]: Checked inductivity of 230 backedges. 38 proven. 27 refuted. 0 times theorem prover too weak. 165 trivial. 0 not checked. [2022-04-28 05:40:45,404 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:53,461 INFO L290 TraceCheckUtils]: 95: Hoare triple {6892#false} assume !false; {6892#false} is VALID [2022-04-28 05:40:53,461 INFO L290 TraceCheckUtils]: 94: Hoare triple {7187#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6892#false} is VALID [2022-04-28 05:40:53,461 INFO L290 TraceCheckUtils]: 93: Hoare triple {7183#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7187#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:40:53,462 INFO L272 TraceCheckUtils]: 92: Hoare triple {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 + ~r~0 * ~y~0 == ~a~0 then 1 else 0)); {7183#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:40:53,463 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {6891#true} {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #99#return; {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:40:53,463 INFO L290 TraceCheckUtils]: 90: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,463 INFO L290 TraceCheckUtils]: 89: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,463 INFO L290 TraceCheckUtils]: 88: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,463 INFO L272 TraceCheckUtils]: 87: Hoare triple {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,463 INFO L290 TraceCheckUtils]: 86: Hoare triple {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(0 != ~b~0); {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:40:53,464 INFO L290 TraceCheckUtils]: 85: Hoare triple {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:40:53,464 INFO L290 TraceCheckUtils]: 84: Hoare triple {7228#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {7203#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:40:53,464 INFO L290 TraceCheckUtils]: 83: Hoare triple {7232#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {7228#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:40:53,465 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {6891#true} {7232#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~b~0 main_~c~0))} #97#return; {7232#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:40:53,465 INFO L290 TraceCheckUtils]: 81: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,465 INFO L290 TraceCheckUtils]: 80: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,465 INFO L290 TraceCheckUtils]: 79: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,465 INFO L272 TraceCheckUtils]: 78: Hoare triple {7232#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,466 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} {6891#true} #95#return; {7232#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:40:53,466 INFO L290 TraceCheckUtils]: 76: Hoare triple {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 75: Hoare triple {7260#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7128#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 74: Hoare triple {6891#true} ~cond := #in~cond; {7260#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:40:53,467 INFO L272 TraceCheckUtils]: 73: Hoare triple {6891#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {6891#true} {6891#true} #93#return; {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 71: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 70: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 69: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L272 TraceCheckUtils]: 68: Hoare triple {6891#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {6891#true} {6891#true} #91#return; {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 66: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,467 INFO L290 TraceCheckUtils]: 65: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 64: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L272 TraceCheckUtils]: 63: Hoare triple {6891#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 62: Hoare triple {6891#true} assume !false; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 61: Hoare triple {6891#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {6891#true} {6891#true} #97#return; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 59: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 58: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 57: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L272 TraceCheckUtils]: 56: Hoare triple {6891#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {6891#true} {6891#true} #95#return; {6891#true} is VALID [2022-04-28 05:40:53,468 INFO L290 TraceCheckUtils]: 54: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L290 TraceCheckUtils]: 53: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L290 TraceCheckUtils]: 52: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L272 TraceCheckUtils]: 51: Hoare triple {6891#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6891#true} {6891#true} #93#return; {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L290 TraceCheckUtils]: 49: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L290 TraceCheckUtils]: 48: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L290 TraceCheckUtils]: 47: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L272 TraceCheckUtils]: 46: Hoare triple {6891#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,469 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6891#true} {6891#true} #91#return; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 44: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 43: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 42: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L272 TraceCheckUtils]: 41: Hoare triple {6891#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 40: Hoare triple {6891#true} assume !false; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 39: Hoare triple {6891#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 38: Hoare triple {6891#true} assume !false; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6891#true} {6891#true} #89#return; {6891#true} is VALID [2022-04-28 05:40:53,470 INFO L290 TraceCheckUtils]: 36: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L290 TraceCheckUtils]: 35: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L290 TraceCheckUtils]: 34: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L272 TraceCheckUtils]: 33: Hoare triple {6891#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6891#true} {6891#true} #87#return; {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L290 TraceCheckUtils]: 31: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L290 TraceCheckUtils]: 30: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L290 TraceCheckUtils]: 29: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L272 TraceCheckUtils]: 28: Hoare triple {6891#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,471 INFO L290 TraceCheckUtils]: 27: Hoare triple {6891#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6891#true} {6891#true} #85#return; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L290 TraceCheckUtils]: 25: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L290 TraceCheckUtils]: 24: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L290 TraceCheckUtils]: 23: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L272 TraceCheckUtils]: 22: Hoare triple {6891#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6891#true} {6891#true} #83#return; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L290 TraceCheckUtils]: 20: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L290 TraceCheckUtils]: 19: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L290 TraceCheckUtils]: 18: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,472 INFO L272 TraceCheckUtils]: 17: Hoare triple {6891#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6891#true} {6891#true} #81#return; {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 15: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 14: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L272 TraceCheckUtils]: 12: Hoare triple {6891#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {6891#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6891#true} {6891#true} #79#return; {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 9: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 8: Hoare triple {6891#true} assume !(0 == ~cond); {6891#true} is VALID [2022-04-28 05:40:53,473 INFO L290 TraceCheckUtils]: 7: Hoare triple {6891#true} ~cond := #in~cond; {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L272 TraceCheckUtils]: 6: Hoare triple {6891#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L290 TraceCheckUtils]: 5: Hoare triple {6891#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L272 TraceCheckUtils]: 4: Hoare triple {6891#true} call #t~ret6 := main(); {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6891#true} {6891#true} #103#return; {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {6891#true} assume true; {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {6891#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {6891#true} call ULTIMATE.init(); {6891#true} is VALID [2022-04-28 05:40:53,474 INFO L134 CoverageAnalysis]: Checked inductivity of 230 backedges. 39 proven. 7 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 05:40:53,475 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:53,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [997277627] [2022-04-28 05:40:53,475 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:53,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1863383757] [2022-04-28 05:40:53,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1863383757] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:40:53,475 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:40:53,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 9] total 19 [2022-04-28 05:40:53,475 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:53,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [409569930] [2022-04-28 05:40:53,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [409569930] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:53,476 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:53,476 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:40:53,476 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1017641363] [2022-04-28 05:40:53,476 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:53,476 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) Word has length 96 [2022-04-28 05:40:53,477 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:53,477 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-28 05:40:53,546 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:40:53,546 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:40:53,546 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:53,547 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:40:53,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=289, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:40:53,547 INFO L87 Difference]: Start difference. First operand 83 states and 104 transitions. Second operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-28 05:40:55,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:55,728 INFO L93 Difference]: Finished difference Result 98 states and 123 transitions. [2022-04-28 05:40:55,728 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:40:55,728 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) Word has length 96 [2022-04-28 05:40:55,729 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:55,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-28 05:40:55,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 105 transitions. [2022-04-28 05:40:55,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-28 05:40:55,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 105 transitions. [2022-04-28 05:40:55,733 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 105 transitions. [2022-04-28 05:40:55,834 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:40:55,835 INFO L225 Difference]: With dead ends: 98 [2022-04-28 05:40:55,835 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 05:40:55,836 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 198 GetRequests, 173 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 104 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=101, Invalid=549, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:40:55,836 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 35 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 633 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 653 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 633 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:55,836 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [48 Valid, 246 Invalid, 653 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 633 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 05:40:55,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 05:40:56,039 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-28 05:40:56,039 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:56,039 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 88 states, 48 states have (on average 1.125) internal successors, (54), 49 states have internal predecessors, (54), 30 states have call successors, (30), 10 states have call predecessors, (30), 9 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:40:56,040 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 88 states, 48 states have (on average 1.125) internal successors, (54), 49 states have internal predecessors, (54), 30 states have call successors, (30), 10 states have call predecessors, (30), 9 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:40:56,040 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 88 states, 48 states have (on average 1.125) internal successors, (54), 49 states have internal predecessors, (54), 30 states have call successors, (30), 10 states have call predecessors, (30), 9 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:40:56,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:56,043 INFO L93 Difference]: Finished difference Result 90 states and 114 transitions. [2022-04-28 05:40:56,043 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 114 transitions. [2022-04-28 05:40:56,043 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:56,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:56,044 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 48 states have (on average 1.125) internal successors, (54), 49 states have internal predecessors, (54), 30 states have call successors, (30), 10 states have call predecessors, (30), 9 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) Second operand 90 states. [2022-04-28 05:40:56,044 INFO L87 Difference]: Start difference. First operand has 88 states, 48 states have (on average 1.125) internal successors, (54), 49 states have internal predecessors, (54), 30 states have call successors, (30), 10 states have call predecessors, (30), 9 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) Second operand 90 states. [2022-04-28 05:40:56,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:56,047 INFO L93 Difference]: Finished difference Result 90 states and 114 transitions. [2022-04-28 05:40:56,047 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 114 transitions. [2022-04-28 05:40:56,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:56,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:56,047 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:56,047 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:56,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 48 states have (on average 1.125) internal successors, (54), 49 states have internal predecessors, (54), 30 states have call successors, (30), 10 states have call predecessors, (30), 9 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-28 05:40:56,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 112 transitions. [2022-04-28 05:40:56,050 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 112 transitions. Word has length 96 [2022-04-28 05:40:56,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:56,051 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 112 transitions. [2022-04-28 05:40:56,051 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 12 states have internal predecessors, (29), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-28 05:40:56,051 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 88 states and 112 transitions. [2022-04-28 05:40:56,244 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:56,244 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 112 transitions. [2022-04-28 05:40:56,247 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 05:40:56,247 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:56,247 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 10, 6, 6, 6, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:56,271 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 05:40:56,463 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:40:56,463 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:56,464 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:56,464 INFO L85 PathProgramCache]: Analyzing trace with hash 948121191, now seen corresponding path program 1 times [2022-04-28 05:40:56,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:56,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [479205552] [2022-04-28 05:40:56,464 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:56,464 INFO L85 PathProgramCache]: Analyzing trace with hash 948121191, now seen corresponding path program 2 times [2022-04-28 05:40:56,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:56,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [677347475] [2022-04-28 05:40:56,465 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:56,465 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:56,478 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:56,478 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1494036849] [2022-04-28 05:40:56,478 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:40:56,478 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:56,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:56,479 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:40:56,482 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:40:56,533 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:40:56,533 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:56,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-28 05:40:56,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:56,549 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:56,952 INFO L272 TraceCheckUtils]: 0: Hoare triple {8051#true} call ULTIMATE.init(); {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {8051#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8051#true} {8051#true} #103#return; {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L272 TraceCheckUtils]: 4: Hoare triple {8051#true} call #t~ret6 := main(); {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L290 TraceCheckUtils]: 5: Hoare triple {8051#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L272 TraceCheckUtils]: 6: Hoare triple {8051#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L290 TraceCheckUtils]: 7: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L290 TraceCheckUtils]: 8: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L290 TraceCheckUtils]: 9: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,952 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8051#true} {8051#true} #79#return; {8051#true} is VALID [2022-04-28 05:40:56,953 INFO L290 TraceCheckUtils]: 11: Hoare triple {8051#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8051#true} is VALID [2022-04-28 05:40:56,953 INFO L272 TraceCheckUtils]: 12: Hoare triple {8051#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,953 INFO L290 TraceCheckUtils]: 13: Hoare triple {8051#true} ~cond := #in~cond; {8095#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:56,953 INFO L290 TraceCheckUtils]: 14: Hoare triple {8095#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8099#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:56,953 INFO L290 TraceCheckUtils]: 15: Hoare triple {8099#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8099#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:56,954 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8099#(not (= |assume_abort_if_not_#in~cond| 0))} {8051#true} #81#return; {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:56,954 INFO L272 TraceCheckUtils]: 17: Hoare triple {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,954 INFO L290 TraceCheckUtils]: 18: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,954 INFO L290 TraceCheckUtils]: 19: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,954 INFO L290 TraceCheckUtils]: 20: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,955 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8051#true} {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #83#return; {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:56,955 INFO L272 TraceCheckUtils]: 22: Hoare triple {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,955 INFO L290 TraceCheckUtils]: 23: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,955 INFO L290 TraceCheckUtils]: 24: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,955 INFO L290 TraceCheckUtils]: 25: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,955 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8051#true} {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #85#return; {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-28 05:40:56,956 INFO L290 TraceCheckUtils]: 27: Hoare triple {8106#(and (<= 0 main_~y~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,956 INFO L272 TraceCheckUtils]: 28: Hoare triple {8140#(<= main_~b~0 1)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,956 INFO L290 TraceCheckUtils]: 29: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,956 INFO L290 TraceCheckUtils]: 30: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,956 INFO L290 TraceCheckUtils]: 31: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,956 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #87#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,957 INFO L272 TraceCheckUtils]: 33: Hoare triple {8140#(<= main_~b~0 1)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,957 INFO L290 TraceCheckUtils]: 34: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,957 INFO L290 TraceCheckUtils]: 35: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,957 INFO L290 TraceCheckUtils]: 36: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,957 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #89#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,957 INFO L290 TraceCheckUtils]: 38: Hoare triple {8140#(<= main_~b~0 1)} assume !false; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,958 INFO L290 TraceCheckUtils]: 39: Hoare triple {8140#(<= main_~b~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,958 INFO L290 TraceCheckUtils]: 40: Hoare triple {8140#(<= main_~b~0 1)} assume !false; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,958 INFO L272 TraceCheckUtils]: 41: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,958 INFO L290 TraceCheckUtils]: 42: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,958 INFO L290 TraceCheckUtils]: 43: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,958 INFO L290 TraceCheckUtils]: 44: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,959 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #91#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,959 INFO L272 TraceCheckUtils]: 46: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,959 INFO L290 TraceCheckUtils]: 47: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,959 INFO L290 TraceCheckUtils]: 48: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,959 INFO L290 TraceCheckUtils]: 49: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,960 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #93#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,960 INFO L272 TraceCheckUtils]: 51: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,960 INFO L290 TraceCheckUtils]: 52: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,960 INFO L290 TraceCheckUtils]: 53: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,960 INFO L290 TraceCheckUtils]: 54: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,960 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #95#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,960 INFO L272 TraceCheckUtils]: 56: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,960 INFO L290 TraceCheckUtils]: 57: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,961 INFO L290 TraceCheckUtils]: 58: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,961 INFO L290 TraceCheckUtils]: 59: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,961 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #97#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:56,962 INFO L290 TraceCheckUtils]: 61: Hoare triple {8140#(<= main_~b~0 1)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,962 INFO L290 TraceCheckUtils]: 62: Hoare triple {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} assume !false; {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,962 INFO L272 TraceCheckUtils]: 63: Hoare triple {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,962 INFO L290 TraceCheckUtils]: 64: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,962 INFO L290 TraceCheckUtils]: 65: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,963 INFO L290 TraceCheckUtils]: 66: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,963 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8051#true} {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} #91#return; {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,963 INFO L272 TraceCheckUtils]: 68: Hoare triple {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,963 INFO L290 TraceCheckUtils]: 69: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,963 INFO L290 TraceCheckUtils]: 70: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,963 INFO L290 TraceCheckUtils]: 71: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,964 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8051#true} {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} #93#return; {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,964 INFO L272 TraceCheckUtils]: 73: Hoare triple {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,964 INFO L290 TraceCheckUtils]: 74: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,964 INFO L290 TraceCheckUtils]: 75: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,964 INFO L290 TraceCheckUtils]: 76: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,965 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8051#true} {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} #95#return; {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,965 INFO L272 TraceCheckUtils]: 78: Hoare triple {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:56,965 INFO L290 TraceCheckUtils]: 79: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:56,965 INFO L290 TraceCheckUtils]: 80: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:56,965 INFO L290 TraceCheckUtils]: 81: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:56,966 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8051#true} {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} #97#return; {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,966 INFO L290 TraceCheckUtils]: 83: Hoare triple {8243#(and (<= main_~b~0 1) (<= 0 main_~c~0))} assume !(~c~0 >= ~b~0); {8310#(and (< main_~c~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:56,967 INFO L290 TraceCheckUtils]: 84: Hoare triple {8310#(and (< main_~c~0 1) (<= 0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} is VALID [2022-04-28 05:40:56,967 INFO L290 TraceCheckUtils]: 85: Hoare triple {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} assume !false; {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} is VALID [2022-04-28 05:40:56,967 INFO L290 TraceCheckUtils]: 86: Hoare triple {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8052#false} is VALID [2022-04-28 05:40:56,967 INFO L290 TraceCheckUtils]: 87: Hoare triple {8052#false} assume !false; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L272 TraceCheckUtils]: 88: Hoare triple {8052#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 89: Hoare triple {8052#false} ~cond := #in~cond; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 90: Hoare triple {8052#false} assume !(0 == ~cond); {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 91: Hoare triple {8052#false} assume true; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {8052#false} {8052#false} #91#return; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L272 TraceCheckUtils]: 93: Hoare triple {8052#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 94: Hoare triple {8052#false} ~cond := #in~cond; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 95: Hoare triple {8052#false} assume !(0 == ~cond); {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 96: Hoare triple {8052#false} assume true; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {8052#false} {8052#false} #93#return; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L272 TraceCheckUtils]: 98: Hoare triple {8052#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 99: Hoare triple {8052#false} ~cond := #in~cond; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 100: Hoare triple {8052#false} assume 0 == ~cond; {8052#false} is VALID [2022-04-28 05:40:56,968 INFO L290 TraceCheckUtils]: 101: Hoare triple {8052#false} assume !false; {8052#false} is VALID [2022-04-28 05:40:56,969 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 99 proven. 12 refuted. 0 times theorem prover too weak. 165 trivial. 0 not checked. [2022-04-28 05:40:56,969 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:57,493 INFO L290 TraceCheckUtils]: 101: Hoare triple {8052#false} assume !false; {8052#false} is VALID [2022-04-28 05:40:57,493 INFO L290 TraceCheckUtils]: 100: Hoare triple {8052#false} assume 0 == ~cond; {8052#false} is VALID [2022-04-28 05:40:57,493 INFO L290 TraceCheckUtils]: 99: Hoare triple {8052#false} ~cond := #in~cond; {8052#false} is VALID [2022-04-28 05:40:57,493 INFO L272 TraceCheckUtils]: 98: Hoare triple {8052#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8052#false} is VALID [2022-04-28 05:40:57,493 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {8051#true} {8052#false} #93#return; {8052#false} is VALID [2022-04-28 05:40:57,493 INFO L290 TraceCheckUtils]: 96: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,493 INFO L290 TraceCheckUtils]: 95: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,493 INFO L290 TraceCheckUtils]: 94: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,493 INFO L272 TraceCheckUtils]: 93: Hoare triple {8052#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,493 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {8051#true} {8052#false} #91#return; {8052#false} is VALID [2022-04-28 05:40:57,494 INFO L290 TraceCheckUtils]: 91: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,494 INFO L290 TraceCheckUtils]: 90: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,494 INFO L290 TraceCheckUtils]: 89: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,494 INFO L272 TraceCheckUtils]: 88: Hoare triple {8052#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,494 INFO L290 TraceCheckUtils]: 87: Hoare triple {8052#false} assume !false; {8052#false} is VALID [2022-04-28 05:40:57,494 INFO L290 TraceCheckUtils]: 86: Hoare triple {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8052#false} is VALID [2022-04-28 05:40:57,495 INFO L290 TraceCheckUtils]: 85: Hoare triple {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} assume !false; {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} is VALID [2022-04-28 05:40:57,495 INFO L290 TraceCheckUtils]: 84: Hoare triple {8310#(and (< main_~c~0 1) (<= 0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8314#(and (< main_~b~0 1) (<= 0 main_~b~0))} is VALID [2022-04-28 05:40:57,495 INFO L290 TraceCheckUtils]: 83: Hoare triple {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} assume !(~c~0 >= ~b~0); {8310#(and (< main_~c~0 1) (<= 0 main_~c~0))} is VALID [2022-04-28 05:40:57,496 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8051#true} {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} #97#return; {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} is VALID [2022-04-28 05:40:57,496 INFO L290 TraceCheckUtils]: 81: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,496 INFO L290 TraceCheckUtils]: 80: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,496 INFO L290 TraceCheckUtils]: 79: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,496 INFO L272 TraceCheckUtils]: 78: Hoare triple {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,497 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8051#true} {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} #95#return; {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} is VALID [2022-04-28 05:40:57,497 INFO L290 TraceCheckUtils]: 76: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,497 INFO L290 TraceCheckUtils]: 75: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,497 INFO L290 TraceCheckUtils]: 74: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,497 INFO L272 TraceCheckUtils]: 73: Hoare triple {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,498 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8051#true} {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} #93#return; {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} is VALID [2022-04-28 05:40:57,498 INFO L290 TraceCheckUtils]: 71: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,498 INFO L290 TraceCheckUtils]: 70: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,498 INFO L290 TraceCheckUtils]: 69: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,498 INFO L272 TraceCheckUtils]: 68: Hoare triple {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,499 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8051#true} {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} #91#return; {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} is VALID [2022-04-28 05:40:57,499 INFO L290 TraceCheckUtils]: 66: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,499 INFO L290 TraceCheckUtils]: 65: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,499 INFO L290 TraceCheckUtils]: 64: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,499 INFO L272 TraceCheckUtils]: 63: Hoare triple {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,502 INFO L290 TraceCheckUtils]: 62: Hoare triple {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} assume !false; {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} is VALID [2022-04-28 05:40:57,503 INFO L290 TraceCheckUtils]: 61: Hoare triple {8140#(<= main_~b~0 1)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8420#(or (<= main_~b~0 main_~c~0) (and (< main_~c~0 1) (<= 0 main_~c~0)))} is VALID [2022-04-28 05:40:57,504 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #97#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,504 INFO L290 TraceCheckUtils]: 59: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,504 INFO L290 TraceCheckUtils]: 58: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,504 INFO L290 TraceCheckUtils]: 57: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,504 INFO L272 TraceCheckUtils]: 56: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,504 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #95#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,505 INFO L290 TraceCheckUtils]: 54: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,505 INFO L290 TraceCheckUtils]: 53: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,505 INFO L290 TraceCheckUtils]: 52: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,505 INFO L272 TraceCheckUtils]: 51: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,505 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #93#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,505 INFO L290 TraceCheckUtils]: 49: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,505 INFO L290 TraceCheckUtils]: 48: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,506 INFO L290 TraceCheckUtils]: 47: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,506 INFO L272 TraceCheckUtils]: 46: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,506 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #91#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,506 INFO L290 TraceCheckUtils]: 44: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,506 INFO L290 TraceCheckUtils]: 43: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,506 INFO L290 TraceCheckUtils]: 42: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,506 INFO L272 TraceCheckUtils]: 41: Hoare triple {8140#(<= main_~b~0 1)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,507 INFO L290 TraceCheckUtils]: 40: Hoare triple {8140#(<= main_~b~0 1)} assume !false; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,507 INFO L290 TraceCheckUtils]: 39: Hoare triple {8140#(<= main_~b~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,507 INFO L290 TraceCheckUtils]: 38: Hoare triple {8140#(<= main_~b~0 1)} assume !false; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,508 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #89#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,508 INFO L290 TraceCheckUtils]: 36: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L290 TraceCheckUtils]: 35: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L290 TraceCheckUtils]: 34: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L272 TraceCheckUtils]: 33: Hoare triple {8140#(<= main_~b~0 1)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8051#true} {8140#(<= main_~b~0 1)} #87#return; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,508 INFO L290 TraceCheckUtils]: 31: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L290 TraceCheckUtils]: 30: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L290 TraceCheckUtils]: 29: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,508 INFO L272 TraceCheckUtils]: 28: Hoare triple {8140#(<= main_~b~0 1)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,509 INFO L290 TraceCheckUtils]: 27: Hoare triple {8589#(<= main_~y~0 1)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8140#(<= main_~b~0 1)} is VALID [2022-04-28 05:40:57,509 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8051#true} {8589#(<= main_~y~0 1)} #85#return; {8589#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:57,509 INFO L290 TraceCheckUtils]: 25: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,509 INFO L290 TraceCheckUtils]: 24: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,509 INFO L290 TraceCheckUtils]: 23: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,510 INFO L272 TraceCheckUtils]: 22: Hoare triple {8589#(<= main_~y~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,510 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8051#true} {8589#(<= main_~y~0 1)} #83#return; {8589#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:57,510 INFO L290 TraceCheckUtils]: 20: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,510 INFO L290 TraceCheckUtils]: 19: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,510 INFO L290 TraceCheckUtils]: 18: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,510 INFO L272 TraceCheckUtils]: 17: Hoare triple {8589#(<= main_~y~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,511 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8099#(not (= |assume_abort_if_not_#in~cond| 0))} {8051#true} #81#return; {8589#(<= main_~y~0 1)} is VALID [2022-04-28 05:40:57,511 INFO L290 TraceCheckUtils]: 15: Hoare triple {8099#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8099#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:57,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {8632#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {8099#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 13: Hoare triple {8051#true} ~cond := #in~cond; {8632#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:40:57,512 INFO L272 TraceCheckUtils]: 12: Hoare triple {8051#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 11: Hoare triple {8051#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8051#true} {8051#true} #79#return; {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {8051#true} assume !(0 == ~cond); {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 7: Hoare triple {8051#true} ~cond := #in~cond; {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L272 TraceCheckUtils]: 6: Hoare triple {8051#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 5: Hoare triple {8051#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L272 TraceCheckUtils]: 4: Hoare triple {8051#true} call #t~ret6 := main(); {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8051#true} {8051#true} #103#return; {8051#true} is VALID [2022-04-28 05:40:57,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {8051#true} assume true; {8051#true} is VALID [2022-04-28 05:40:57,513 INFO L290 TraceCheckUtils]: 1: Hoare triple {8051#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8051#true} is VALID [2022-04-28 05:40:57,513 INFO L272 TraceCheckUtils]: 0: Hoare triple {8051#true} call ULTIMATE.init(); {8051#true} is VALID [2022-04-28 05:40:57,513 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 33 proven. 18 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2022-04-28 05:40:57,513 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:57,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [677347475] [2022-04-28 05:40:57,513 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:57,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1494036849] [2022-04-28 05:40:57,513 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1494036849] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:40:57,513 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:40:57,514 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 12 [2022-04-28 05:40:57,514 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:57,514 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [479205552] [2022-04-28 05:40:57,514 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [479205552] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:57,514 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:57,514 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:40:57,514 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [939858358] [2022-04-28 05:40:57,514 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:57,515 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) Word has length 102 [2022-04-28 05:40:57,515 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:57,515 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 05:40:57,574 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:40:57,575 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:40:57,575 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:57,575 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:40:57,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:40:57,575 INFO L87 Difference]: Start difference. First operand 88 states and 112 transitions. Second operand has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 05:40:58,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:58,188 INFO L93 Difference]: Finished difference Result 103 states and 127 transitions. [2022-04-28 05:40:58,188 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:40:58,188 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) Word has length 102 [2022-04-28 05:40:58,188 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:40:58,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 05:40:58,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 81 transitions. [2022-04-28 05:40:58,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 05:40:58,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 81 transitions. [2022-04-28 05:40:58,191 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 81 transitions. [2022-04-28 05:40:58,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:58,260 INFO L225 Difference]: With dead ends: 103 [2022-04-28 05:40:58,260 INFO L226 Difference]: Without dead ends: 69 [2022-04-28 05:40:58,261 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 192 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=68, Invalid=204, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:40:58,265 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 17 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:40:58,265 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 155 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:40:58,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-28 05:40:58,412 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 69. [2022-04-28 05:40:58,412 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:40:58,412 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 69 states, 38 states have (on average 1.0526315789473684) internal successors, (40), 39 states have internal predecessors, (40), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:58,412 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 69 states, 38 states have (on average 1.0526315789473684) internal successors, (40), 39 states have internal predecessors, (40), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:58,413 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 69 states, 38 states have (on average 1.0526315789473684) internal successors, (40), 39 states have internal predecessors, (40), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:58,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:58,414 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-28 05:40:58,414 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 82 transitions. [2022-04-28 05:40:58,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:58,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:58,414 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 38 states have (on average 1.0526315789473684) internal successors, (40), 39 states have internal predecessors, (40), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 69 states. [2022-04-28 05:40:58,415 INFO L87 Difference]: Start difference. First operand has 69 states, 38 states have (on average 1.0526315789473684) internal successors, (40), 39 states have internal predecessors, (40), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 69 states. [2022-04-28 05:40:58,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:40:58,416 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-28 05:40:58,416 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 82 transitions. [2022-04-28 05:40:58,417 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:40:58,417 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:40:58,417 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:40:58,417 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:40:58,417 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 38 states have (on average 1.0526315789473684) internal successors, (40), 39 states have internal predecessors, (40), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-28 05:40:58,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 82 transitions. [2022-04-28 05:40:58,419 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 82 transitions. Word has length 102 [2022-04-28 05:40:58,419 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:40:58,419 INFO L495 AbstractCegarLoop]: Abstraction has 69 states and 82 transitions. [2022-04-28 05:40:58,419 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 05:40:58,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 69 states and 82 transitions. [2022-04-28 05:40:58,547 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:40:58,547 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 82 transitions. [2022-04-28 05:40:58,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-28 05:40:58,548 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:40:58,548 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:40:58,573 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:40:58,749 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:40:58,749 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:40:58,749 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:40:58,749 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 3 times [2022-04-28 05:40:58,749 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:58,749 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1848308296] [2022-04-28 05:40:58,750 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:40:58,750 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 4 times [2022-04-28 05:40:58,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:40:58,750 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1566527972] [2022-04-28 05:40:58,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:40:58,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:40:58,764 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:40:58,765 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1275828918] [2022-04-28 05:40:58,765 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:40:58,765 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:40:58,765 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:40:58,766 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:40:58,771 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:40:58,818 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:40:58,818 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:40:58,819 INFO L263 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:40:58,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:40:58,841 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:40:59,233 INFO L272 TraceCheckUtils]: 0: Hoare triple {9166#true} call ULTIMATE.init(); {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L290 TraceCheckUtils]: 1: Hoare triple {9166#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L290 TraceCheckUtils]: 2: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9166#true} {9166#true} #103#return; {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L272 TraceCheckUtils]: 4: Hoare triple {9166#true} call #t~ret6 := main(); {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L290 TraceCheckUtils]: 5: Hoare triple {9166#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L272 TraceCheckUtils]: 6: Hoare triple {9166#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,234 INFO L290 TraceCheckUtils]: 7: Hoare triple {9166#true} ~cond := #in~cond; {9192#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:40:59,235 INFO L290 TraceCheckUtils]: 8: Hoare triple {9192#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {9196#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:59,235 INFO L290 TraceCheckUtils]: 9: Hoare triple {9196#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9196#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:59,235 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9196#(not (= |assume_abort_if_not_#in~cond| 0))} {9166#true} #79#return; {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:40:59,236 INFO L290 TraceCheckUtils]: 11: Hoare triple {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:40:59,236 INFO L272 TraceCheckUtils]: 12: Hoare triple {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,236 INFO L290 TraceCheckUtils]: 13: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,236 INFO L290 TraceCheckUtils]: 14: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,236 INFO L290 TraceCheckUtils]: 15: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,236 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9166#true} {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #81#return; {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:40:59,237 INFO L272 TraceCheckUtils]: 17: Hoare triple {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L290 TraceCheckUtils]: 18: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L290 TraceCheckUtils]: 19: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L290 TraceCheckUtils]: 20: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9166#true} {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #83#return; {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:40:59,237 INFO L272 TraceCheckUtils]: 22: Hoare triple {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L290 TraceCheckUtils]: 23: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L290 TraceCheckUtils]: 24: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,237 INFO L290 TraceCheckUtils]: 25: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,238 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9166#true} {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #85#return; {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-28 05:40:59,238 INFO L290 TraceCheckUtils]: 27: Hoare triple {9203#(and (<= 0 main_~x~0) (<= main_~x~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,238 INFO L272 TraceCheckUtils]: 28: Hoare triple {9255#(<= main_~a~0 1)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,238 INFO L290 TraceCheckUtils]: 29: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,238 INFO L290 TraceCheckUtils]: 30: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,238 INFO L290 TraceCheckUtils]: 31: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,239 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9166#true} {9255#(<= main_~a~0 1)} #87#return; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,239 INFO L272 TraceCheckUtils]: 33: Hoare triple {9255#(<= main_~a~0 1)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,239 INFO L290 TraceCheckUtils]: 34: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,239 INFO L290 TraceCheckUtils]: 35: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,239 INFO L290 TraceCheckUtils]: 36: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,239 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {9166#true} {9255#(<= main_~a~0 1)} #89#return; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,240 INFO L290 TraceCheckUtils]: 38: Hoare triple {9255#(<= main_~a~0 1)} assume !false; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,240 INFO L290 TraceCheckUtils]: 39: Hoare triple {9255#(<= main_~a~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,240 INFO L290 TraceCheckUtils]: 40: Hoare triple {9292#(<= main_~c~0 1)} assume !false; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,240 INFO L272 TraceCheckUtils]: 41: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L290 TraceCheckUtils]: 42: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L290 TraceCheckUtils]: 43: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L290 TraceCheckUtils]: 44: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #91#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,241 INFO L272 TraceCheckUtils]: 46: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L290 TraceCheckUtils]: 47: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L290 TraceCheckUtils]: 48: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,241 INFO L290 TraceCheckUtils]: 49: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,242 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #93#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,242 INFO L272 TraceCheckUtils]: 51: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,242 INFO L290 TraceCheckUtils]: 52: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,242 INFO L290 TraceCheckUtils]: 53: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,242 INFO L290 TraceCheckUtils]: 54: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,243 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #95#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,243 INFO L272 TraceCheckUtils]: 56: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,243 INFO L290 TraceCheckUtils]: 57: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,243 INFO L290 TraceCheckUtils]: 58: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,243 INFO L290 TraceCheckUtils]: 59: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,244 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #97#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,244 INFO L290 TraceCheckUtils]: 61: Hoare triple {9292#(<= main_~c~0 1)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {9359#(<= (+ main_~c~0 main_~b~0) 1)} is VALID [2022-04-28 05:40:59,245 INFO L290 TraceCheckUtils]: 62: Hoare triple {9359#(<= (+ main_~c~0 main_~b~0) 1)} assume !false; {9359#(<= (+ main_~c~0 main_~b~0) 1)} is VALID [2022-04-28 05:40:59,245 INFO L272 TraceCheckUtils]: 63: Hoare triple {9359#(<= (+ main_~c~0 main_~b~0) 1)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,245 INFO L290 TraceCheckUtils]: 64: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,245 INFO L290 TraceCheckUtils]: 65: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,245 INFO L290 TraceCheckUtils]: 66: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,245 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {9166#true} {9359#(<= (+ main_~c~0 main_~b~0) 1)} #91#return; {9359#(<= (+ main_~c~0 main_~b~0) 1)} is VALID [2022-04-28 05:40:59,246 INFO L272 TraceCheckUtils]: 68: Hoare triple {9359#(<= (+ main_~c~0 main_~b~0) 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,246 INFO L290 TraceCheckUtils]: 69: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,246 INFO L290 TraceCheckUtils]: 70: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,246 INFO L290 TraceCheckUtils]: 71: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,246 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {9166#true} {9359#(<= (+ main_~c~0 main_~b~0) 1)} #93#return; {9359#(<= (+ main_~c~0 main_~b~0) 1)} is VALID [2022-04-28 05:40:59,246 INFO L272 TraceCheckUtils]: 73: Hoare triple {9359#(<= (+ main_~c~0 main_~b~0) 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,246 INFO L290 TraceCheckUtils]: 74: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,246 INFO L290 TraceCheckUtils]: 75: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,247 INFO L290 TraceCheckUtils]: 76: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,247 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {9166#true} {9359#(<= (+ main_~c~0 main_~b~0) 1)} #95#return; {9359#(<= (+ main_~c~0 main_~b~0) 1)} is VALID [2022-04-28 05:40:59,247 INFO L272 TraceCheckUtils]: 78: Hoare triple {9359#(<= (+ main_~c~0 main_~b~0) 1)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,247 INFO L290 TraceCheckUtils]: 79: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,247 INFO L290 TraceCheckUtils]: 80: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,247 INFO L290 TraceCheckUtils]: 81: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,248 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {9166#true} {9359#(<= (+ main_~c~0 main_~b~0) 1)} #97#return; {9359#(<= (+ main_~c~0 main_~b~0) 1)} is VALID [2022-04-28 05:40:59,249 INFO L290 TraceCheckUtils]: 83: Hoare triple {9359#(<= (+ main_~c~0 main_~b~0) 1)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} is VALID [2022-04-28 05:40:59,249 INFO L290 TraceCheckUtils]: 84: Hoare triple {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} assume !false; {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} is VALID [2022-04-28 05:40:59,249 INFO L272 TraceCheckUtils]: 85: Hoare triple {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,249 INFO L290 TraceCheckUtils]: 86: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,249 INFO L290 TraceCheckUtils]: 87: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,249 INFO L290 TraceCheckUtils]: 88: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,250 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {9166#true} {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} #91#return; {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} is VALID [2022-04-28 05:40:59,250 INFO L272 TraceCheckUtils]: 90: Hoare triple {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,250 INFO L290 TraceCheckUtils]: 91: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,250 INFO L290 TraceCheckUtils]: 92: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,250 INFO L290 TraceCheckUtils]: 93: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,250 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {9166#true} {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} #93#return; {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} is VALID [2022-04-28 05:40:59,251 INFO L272 TraceCheckUtils]: 95: Hoare triple {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,251 INFO L290 TraceCheckUtils]: 96: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,251 INFO L290 TraceCheckUtils]: 97: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,251 INFO L290 TraceCheckUtils]: 98: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,251 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {9166#true} {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} #95#return; {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} is VALID [2022-04-28 05:40:59,251 INFO L272 TraceCheckUtils]: 100: Hoare triple {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,251 INFO L290 TraceCheckUtils]: 101: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,252 INFO L290 TraceCheckUtils]: 102: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,252 INFO L290 TraceCheckUtils]: 103: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,252 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {9166#true} {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} #97#return; {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 105: Hoare triple {9426#(and (<= 0 main_~c~0) (<= (* main_~b~0 2) 1))} assume !(~c~0 >= ~b~0); {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 106: Hoare triple {9167#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 107: Hoare triple {9167#false} assume !false; {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 108: Hoare triple {9167#false} assume !(0 != ~b~0); {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L272 TraceCheckUtils]: 109: Hoare triple {9167#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 110: Hoare triple {9167#false} ~cond := #in~cond; {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 111: Hoare triple {9167#false} assume 0 == ~cond; {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L290 TraceCheckUtils]: 112: Hoare triple {9167#false} assume !false; {9167#false} is VALID [2022-04-28 05:40:59,253 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 26 proven. 33 refuted. 0 times theorem prover too weak. 309 trivial. 0 not checked. [2022-04-28 05:40:59,253 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:40:59,732 INFO L290 TraceCheckUtils]: 112: Hoare triple {9167#false} assume !false; {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L290 TraceCheckUtils]: 111: Hoare triple {9167#false} assume 0 == ~cond; {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L290 TraceCheckUtils]: 110: Hoare triple {9167#false} ~cond := #in~cond; {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L272 TraceCheckUtils]: 109: Hoare triple {9167#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L290 TraceCheckUtils]: 108: Hoare triple {9167#false} assume !(0 != ~b~0); {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L290 TraceCheckUtils]: 107: Hoare triple {9167#false} assume !false; {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L290 TraceCheckUtils]: 106: Hoare triple {9167#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {9167#false} is VALID [2022-04-28 05:40:59,733 INFO L290 TraceCheckUtils]: 105: Hoare triple {9535#(<= main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {9167#false} is VALID [2022-04-28 05:40:59,734 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {9166#true} {9535#(<= main_~b~0 main_~c~0)} #97#return; {9535#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:59,734 INFO L290 TraceCheckUtils]: 103: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,734 INFO L290 TraceCheckUtils]: 102: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,734 INFO L290 TraceCheckUtils]: 101: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,734 INFO L272 TraceCheckUtils]: 100: Hoare triple {9535#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,735 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {9166#true} {9535#(<= main_~b~0 main_~c~0)} #95#return; {9535#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:59,735 INFO L290 TraceCheckUtils]: 98: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,735 INFO L290 TraceCheckUtils]: 97: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,735 INFO L290 TraceCheckUtils]: 96: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,735 INFO L272 TraceCheckUtils]: 95: Hoare triple {9535#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,736 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {9166#true} {9535#(<= main_~b~0 main_~c~0)} #93#return; {9535#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:59,736 INFO L290 TraceCheckUtils]: 93: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,736 INFO L290 TraceCheckUtils]: 92: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,736 INFO L290 TraceCheckUtils]: 91: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,736 INFO L272 TraceCheckUtils]: 90: Hoare triple {9535#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,736 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {9166#true} {9535#(<= main_~b~0 main_~c~0)} #91#return; {9535#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:59,737 INFO L290 TraceCheckUtils]: 88: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,737 INFO L290 TraceCheckUtils]: 87: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,737 INFO L290 TraceCheckUtils]: 86: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,737 INFO L272 TraceCheckUtils]: 85: Hoare triple {9535#(<= main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,737 INFO L290 TraceCheckUtils]: 84: Hoare triple {9535#(<= main_~b~0 main_~c~0)} assume !false; {9535#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:59,738 INFO L290 TraceCheckUtils]: 83: Hoare triple {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {9535#(<= main_~b~0 main_~c~0)} is VALID [2022-04-28 05:40:59,738 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {9166#true} {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} #97#return; {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:40:59,739 INFO L290 TraceCheckUtils]: 81: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,739 INFO L290 TraceCheckUtils]: 80: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,739 INFO L290 TraceCheckUtils]: 79: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,739 INFO L272 TraceCheckUtils]: 78: Hoare triple {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,739 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {9166#true} {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} #95#return; {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:40:59,739 INFO L290 TraceCheckUtils]: 76: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,739 INFO L290 TraceCheckUtils]: 75: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,740 INFO L290 TraceCheckUtils]: 74: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,740 INFO L272 TraceCheckUtils]: 73: Hoare triple {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,740 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {9166#true} {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} #93#return; {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:40:59,740 INFO L290 TraceCheckUtils]: 71: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,740 INFO L290 TraceCheckUtils]: 70: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,740 INFO L290 TraceCheckUtils]: 69: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,740 INFO L272 TraceCheckUtils]: 68: Hoare triple {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,741 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {9166#true} {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} #91#return; {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:40:59,741 INFO L290 TraceCheckUtils]: 66: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,741 INFO L290 TraceCheckUtils]: 65: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,741 INFO L290 TraceCheckUtils]: 64: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,741 INFO L272 TraceCheckUtils]: 63: Hoare triple {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,742 INFO L290 TraceCheckUtils]: 62: Hoare triple {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} assume !false; {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:40:59,742 INFO L290 TraceCheckUtils]: 61: Hoare triple {9292#(<= main_~c~0 1)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {9602#(or (<= (* main_~b~0 2) main_~c~0) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:40:59,743 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #97#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,743 INFO L290 TraceCheckUtils]: 59: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,743 INFO L290 TraceCheckUtils]: 58: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,743 INFO L290 TraceCheckUtils]: 57: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,743 INFO L272 TraceCheckUtils]: 56: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,744 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #95#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,744 INFO L290 TraceCheckUtils]: 54: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,744 INFO L290 TraceCheckUtils]: 53: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,744 INFO L290 TraceCheckUtils]: 52: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,744 INFO L272 TraceCheckUtils]: 51: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,745 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #93#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,745 INFO L290 TraceCheckUtils]: 49: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,745 INFO L290 TraceCheckUtils]: 48: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,745 INFO L290 TraceCheckUtils]: 47: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,745 INFO L272 TraceCheckUtils]: 46: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,746 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {9166#true} {9292#(<= main_~c~0 1)} #91#return; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,746 INFO L290 TraceCheckUtils]: 44: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,746 INFO L290 TraceCheckUtils]: 43: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,746 INFO L290 TraceCheckUtils]: 42: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,746 INFO L272 TraceCheckUtils]: 41: Hoare triple {9292#(<= main_~c~0 1)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,746 INFO L290 TraceCheckUtils]: 40: Hoare triple {9292#(<= main_~c~0 1)} assume !false; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,747 INFO L290 TraceCheckUtils]: 39: Hoare triple {9255#(<= main_~a~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9292#(<= main_~c~0 1)} is VALID [2022-04-28 05:40:59,747 INFO L290 TraceCheckUtils]: 38: Hoare triple {9255#(<= main_~a~0 1)} assume !false; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,747 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {9166#true} {9255#(<= main_~a~0 1)} #89#return; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,747 INFO L290 TraceCheckUtils]: 36: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,747 INFO L290 TraceCheckUtils]: 35: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,747 INFO L290 TraceCheckUtils]: 34: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,748 INFO L272 TraceCheckUtils]: 33: Hoare triple {9255#(<= main_~a~0 1)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,748 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9166#true} {9255#(<= main_~a~0 1)} #87#return; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,748 INFO L290 TraceCheckUtils]: 31: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,748 INFO L290 TraceCheckUtils]: 30: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,748 INFO L290 TraceCheckUtils]: 29: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,748 INFO L272 TraceCheckUtils]: 28: Hoare triple {9255#(<= main_~a~0 1)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,749 INFO L290 TraceCheckUtils]: 27: Hoare triple {9771#(<= main_~x~0 1)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {9255#(<= main_~a~0 1)} is VALID [2022-04-28 05:40:59,749 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9166#true} {9771#(<= main_~x~0 1)} #85#return; {9771#(<= main_~x~0 1)} is VALID [2022-04-28 05:40:59,749 INFO L290 TraceCheckUtils]: 25: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,749 INFO L290 TraceCheckUtils]: 24: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,749 INFO L290 TraceCheckUtils]: 23: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,749 INFO L272 TraceCheckUtils]: 22: Hoare triple {9771#(<= main_~x~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,750 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9166#true} {9771#(<= main_~x~0 1)} #83#return; {9771#(<= main_~x~0 1)} is VALID [2022-04-28 05:40:59,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,750 INFO L290 TraceCheckUtils]: 19: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,750 INFO L272 TraceCheckUtils]: 17: Hoare triple {9771#(<= main_~x~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,750 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9166#true} {9771#(<= main_~x~0 1)} #81#return; {9771#(<= main_~x~0 1)} is VALID [2022-04-28 05:40:59,750 INFO L290 TraceCheckUtils]: 15: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,750 INFO L290 TraceCheckUtils]: 14: Hoare triple {9166#true} assume !(0 == ~cond); {9166#true} is VALID [2022-04-28 05:40:59,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {9166#true} ~cond := #in~cond; {9166#true} is VALID [2022-04-28 05:40:59,751 INFO L272 TraceCheckUtils]: 12: Hoare triple {9771#(<= main_~x~0 1)} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,751 INFO L290 TraceCheckUtils]: 11: Hoare triple {9771#(<= main_~x~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9771#(<= main_~x~0 1)} is VALID [2022-04-28 05:40:59,751 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9196#(not (= |assume_abort_if_not_#in~cond| 0))} {9166#true} #79#return; {9771#(<= main_~x~0 1)} is VALID [2022-04-28 05:40:59,752 INFO L290 TraceCheckUtils]: 9: Hoare triple {9196#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9196#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:59,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {9832#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {9196#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:40:59,752 INFO L290 TraceCheckUtils]: 7: Hoare triple {9166#true} ~cond := #in~cond; {9832#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:40:59,752 INFO L272 TraceCheckUtils]: 6: Hoare triple {9166#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {9166#true} is VALID [2022-04-28 05:40:59,752 INFO L290 TraceCheckUtils]: 5: Hoare triple {9166#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {9166#true} is VALID [2022-04-28 05:40:59,752 INFO L272 TraceCheckUtils]: 4: Hoare triple {9166#true} call #t~ret6 := main(); {9166#true} is VALID [2022-04-28 05:40:59,753 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9166#true} {9166#true} #103#return; {9166#true} is VALID [2022-04-28 05:40:59,753 INFO L290 TraceCheckUtils]: 2: Hoare triple {9166#true} assume true; {9166#true} is VALID [2022-04-28 05:40:59,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {9166#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {9166#true} is VALID [2022-04-28 05:40:59,753 INFO L272 TraceCheckUtils]: 0: Hoare triple {9166#true} call ULTIMATE.init(); {9166#true} is VALID [2022-04-28 05:40:59,753 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 26 proven. 33 refuted. 0 times theorem prover too weak. 309 trivial. 0 not checked. [2022-04-28 05:40:59,753 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:40:59,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1566527972] [2022-04-28 05:40:59,753 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:40:59,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1275828918] [2022-04-28 05:40:59,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1275828918] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:40:59,753 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:40:59,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2022-04-28 05:40:59,754 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:40:59,754 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1848308296] [2022-04-28 05:40:59,754 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1848308296] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:40:59,754 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:40:59,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:40:59,754 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [985733928] [2022-04-28 05:40:59,754 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:40:59,754 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 113 [2022-04-28 05:40:59,755 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:40:59,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:40:59,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:40:59,806 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:40:59,806 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:40:59,806 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:40:59,806 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=127, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:40:59,807 INFO L87 Difference]: Start difference. First operand 69 states and 82 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:41:00,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:41:00,510 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-28 05:41:00,510 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:41:00,511 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 113 [2022-04-28 05:41:00,511 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:41:00,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:41:00,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 70 transitions. [2022-04-28 05:41:00,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:41:00,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 70 transitions. [2022-04-28 05:41:00,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 70 transitions. [2022-04-28 05:41:00,597 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:41:00,597 INFO L225 Difference]: With dead ends: 69 [2022-04-28 05:41:00,597 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 05:41:00,597 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 229 GetRequests, 213 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=217, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:41:00,598 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 11 mSDsluCounter, 138 mSDsCounter, 0 mSdLazyCounter, 201 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 184 SdHoareTripleChecker+Invalid, 239 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 201 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:41:00,598 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 184 Invalid, 239 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 201 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:41:00,599 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 05:41:00,599 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 05:41:00,599 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:41:00,599 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:41:00,599 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:41:00,599 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:41:00,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:41:00,599 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 05:41:00,599 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 05:41:00,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:41:00,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:41:00,600 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:41:00,600 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:41:00,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:41:00,600 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 05:41:00,600 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 05:41:00,600 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:41:00,600 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:41:00,600 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:41:00,600 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:41:00,600 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:41:00,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 05:41:00,600 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 113 [2022-04-28 05:41:00,600 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:41:00,601 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 05:41:00,601 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 9 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:41:00,601 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-28 05:41:00,601 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:41:00,601 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 05:41:00,601 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:41:00,603 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 05:41:00,627 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:41:00,804 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:41:00,806 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 05:41:02,902 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 4) no Hoare annotation was computed. [2022-04-28 05:41:02,903 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 4) no Hoare annotation was computed. [2022-04-28 05:41:02,903 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 4) no Hoare annotation was computed. [2022-04-28 05:41:02,903 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 7 9) the Hoare annotation is: true [2022-04-28 05:41:02,903 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:41:02,903 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:41:02,903 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:41:02,903 INFO L895 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1)) [2022-04-28 05:41:02,903 INFO L902 garLoopResultBuilder]: At program point mainEXIT(lines 18 74) the Hoare annotation is: true [2022-04-28 05:41:02,903 INFO L895 garLoopResultBuilder]: At program point L50(line 50) the Hoare annotation is: (let ((.cse0 (= main_~r~0 0)) (.cse1 (= main_~s~0 1)) (.cse2 (<= 1 main_~a~0)) (.cse3 (= main_~b~0 main_~y~0)) (.cse4 (= main_~yy~0 (* main_~y~0 main_~y~0))) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse8 (= main_~p~0 1))) (or (and .cse0 (<= (+ main_~c~0 main_~b~0) 1) .cse1 (<= main_~x~0 1) .cse2 (<= 0 main_~c~0) .cse3 (= main_~k~0 1) .cse4 .cse5 .cse6 .cse7 .cse8) (and .cse0 (= main_~k~0 0) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 (<= main_~c~0 1) (= main_~c~0 main_~x~0) (<= main_~y~0 1) .cse8))) [2022-04-28 05:41:02,903 INFO L895 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (let ((.cse0 (= main_~r~0 0)) (.cse1 (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (.cse2 (= main_~s~0 1)) (.cse3 (= main_~b~0 main_~y~0)) (.cse4 (= main_~yy~0 (* main_~y~0 main_~y~0))) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse8 (= main_~p~0 1))) (or (and .cse0 .cse1 .cse2 (<= 1 main_~a~0) .cse3 .cse4 .cse5 .cse6 .cse7 (<= main_~c~0 1) (= main_~c~0 main_~x~0) (<= main_~y~0 1) .cse8) (and .cse0 .cse1 .cse2 (<= main_~x~0 1) (<= 0 main_~c~0) .cse3 (= main_~k~0 1) .cse4 .cse5 .cse6 .cse7 .cse8))) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (let ((.cse0 (= main_~r~0 0)) (.cse1 (= main_~s~0 1)) (.cse2 (<= 1 main_~a~0)) (.cse3 (= main_~b~0 main_~y~0)) (.cse4 (= main_~yy~0 (* main_~y~0 main_~y~0))) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse8 (= main_~p~0 1))) (or (and .cse0 (<= (+ main_~c~0 main_~b~0) 1) .cse1 (<= main_~x~0 1) .cse2 (<= 0 main_~c~0) .cse3 (= main_~k~0 1) .cse4 .cse5 .cse6 .cse7 .cse8) (and .cse0 (= main_~k~0 0) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 (<= main_~c~0 1) (= main_~c~0 main_~x~0) (<= main_~y~0 1) .cse8))) [2022-04-28 05:41:02,904 INFO L902 garLoopResultBuilder]: At program point mainFINAL(lines 18 74) the Hoare annotation is: true [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L42(lines 42 43) the Hoare annotation is: (let ((.cse0 (< main_~c~0 1)) (.cse1 (<= 0 main_~c~0)) (.cse2 (<= main_~y~0 1))) (or (and (= main_~r~0 0) .cse0 (= main_~s~0 1) (<= main_~x~0 1) (<= 1 main_~a~0) .cse1 (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) .cse2 (= main_~p~0 1)) (let ((.cse3 (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)))) (and .cse0 (< main_~b~0 1) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) .cse1 (< .cse3 (+ main_~y~0 1)) (< .cse3 (+ main_~x~0 1)) (<= 0 main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0) .cse2)))) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L71(line 71) the Hoare annotation is: (and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (= main_~r~0 1) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (and (= main_~r~0 0) (< main_~c~0 1) (= main_~s~0 1) (<= main_~x~0 1) (<= 1 main_~a~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (and (= main_~r~0 0) (< main_~c~0 1) (= main_~s~0 1) (<= main_~x~0 1) (<= 1 main_~a~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-28 05:41:02,904 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 18 74) the Hoare annotation is: true [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: (and (<= 1 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L24(line 24) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 1)) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L24-1(line 24) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1)) [2022-04-28 05:41:02,904 INFO L902 garLoopResultBuilder]: At program point L22(line 22) the Hoare annotation is: true [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L22-1(line 22) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 1)) [2022-04-28 05:41:02,904 INFO L895 garLoopResultBuilder]: At program point L51(lines 47 56) the Hoare annotation is: (let ((.cse0 (= main_~r~0 0)) (.cse1 (= main_~s~0 1)) (.cse2 (<= 1 main_~a~0)) (.cse3 (= main_~b~0 main_~y~0)) (.cse4 (= main_~yy~0 (* main_~y~0 main_~y~0))) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse8 (= main_~p~0 1))) (or (and .cse0 (<= (+ main_~c~0 main_~b~0) 1) .cse1 (<= main_~x~0 1) .cse2 (<= 0 main_~c~0) .cse3 (= main_~k~0 1) .cse4 .cse5 .cse6 .cse7 .cse8) (and .cse0 (= main_~k~0 0) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 (<= main_~c~0 1) (= main_~c~0 main_~x~0) (<= main_~y~0 1) .cse8))) [2022-04-28 05:41:02,905 INFO L895 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (let ((.cse0 (= main_~r~0 0)) (.cse1 (= main_~s~0 1)) (.cse2 (<= 1 main_~a~0)) (.cse3 (= main_~b~0 main_~y~0)) (.cse4 (= main_~yy~0 (* main_~y~0 main_~y~0))) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse8 (= main_~p~0 1))) (or (and .cse0 (<= (+ main_~c~0 main_~b~0) 1) .cse1 (<= main_~x~0 1) .cse2 (<= 0 main_~c~0) .cse3 (= main_~k~0 1) .cse4 .cse5 .cse6 .cse7 .cse8) (and .cse0 (= main_~k~0 0) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 (<= main_~c~0 1) (= main_~c~0 main_~x~0) (<= main_~y~0 1) .cse8))) [2022-04-28 05:41:02,905 INFO L895 garLoopResultBuilder]: At program point L47-2(lines 47 56) the Hoare annotation is: (let ((.cse0 (= main_~r~0 0)) (.cse1 (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (.cse2 (= main_~s~0 1)) (.cse3 (= main_~b~0 main_~y~0)) (.cse4 (= main_~yy~0 (* main_~y~0 main_~y~0))) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~a~0 main_~x~0)) (.cse8 (= main_~p~0 1))) (or (and .cse0 .cse1 .cse2 (<= 1 main_~a~0) .cse3 .cse4 .cse5 .cse6 .cse7 (<= main_~c~0 1) (= main_~c~0 main_~x~0) (<= main_~y~0 1) .cse8) (and .cse0 .cse1 .cse2 (<= main_~x~0 1) (<= 0 main_~c~0) .cse3 (= main_~k~0 1) .cse4 .cse5 .cse6 .cse7 .cse8))) [2022-04-28 05:41:02,905 INFO L895 garLoopResultBuilder]: At program point L47-3(lines 47 56) the Hoare annotation is: (and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (< main_~c~0 1) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~k~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-28 05:41:02,905 INFO L895 garLoopResultBuilder]: At program point L41-1(lines 39 68) the Hoare annotation is: (let ((.cse0 (< main_~c~0 1)) (.cse1 (<= 0 main_~c~0)) (.cse2 (<= main_~y~0 1))) (or (and (= main_~r~0 0) .cse0 (= main_~s~0 1) (<= main_~x~0 1) (<= 1 main_~a~0) .cse1 (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) .cse2 (= main_~p~0 1)) (let ((.cse3 (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)))) (and .cse0 (< main_~b~0 1) (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) .cse1 (< .cse3 (+ main_~y~0 1)) (< .cse3 (+ main_~x~0 1)) (<= 0 main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0) .cse2)))) [2022-04-28 05:41:02,905 INFO L902 garLoopResultBuilder]: At program point L72(line 72) the Hoare annotation is: true [2022-04-28 05:41:02,905 INFO L895 garLoopResultBuilder]: At program point L41-2(lines 41 68) the Hoare annotation is: (let ((.cse0 (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)))) (and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (< .cse0 (+ main_~y~0 1)) (< .cse0 (+ main_~x~0 1)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (<= main_~y~0 1))) [2022-04-28 05:41:02,905 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-28 05:41:02,905 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:41:02,905 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-28 05:41:02,905 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-28 05:41:02,905 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 05:41:02,906 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 05:41:02,906 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-28 05:41:02,906 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 10 16) the Hoare annotation is: true [2022-04-28 05:41:02,906 INFO L895 garLoopResultBuilder]: At program point L12(lines 12 13) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 05:41:02,906 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:41:02,906 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:41:02,906 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:41:02,906 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:41:02,909 INFO L356 BasicCegarLoop]: Path program histogram: [4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-04-28 05:41:02,910 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 05:41:02,912 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 05:41:02,921 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 05:41:02,968 INFO L163 areAnnotationChecker]: CFG has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 05:41:02,978 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 05:41:02 BoogieIcfgContainer [2022-04-28 05:41:02,978 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 05:41:02,979 INFO L158 Benchmark]: Toolchain (without parser) took 170867.40ms. Allocated memory was 184.5MB in the beginning and 240.1MB in the end (delta: 55.6MB). Free memory was 135.0MB in the beginning and 113.0MB in the end (delta: 22.0MB). Peak memory consumption was 117.2MB. Max. memory is 8.0GB. [2022-04-28 05:41:02,980 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 184.5MB. Free memory was 151.1MB in the beginning and 151.0MB in the end (delta: 74.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 05:41:02,980 INFO L158 Benchmark]: CACSL2BoogieTranslator took 218.73ms. Allocated memory is still 184.5MB. Free memory was 134.8MB in the beginning and 159.2MB in the end (delta: -24.4MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. [2022-04-28 05:41:02,980 INFO L158 Benchmark]: Boogie Preprocessor took 25.96ms. Allocated memory is still 184.5MB. Free memory was 159.2MB in the beginning and 157.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 05:41:02,980 INFO L158 Benchmark]: RCFGBuilder took 341.96ms. Allocated memory is still 184.5MB. Free memory was 157.7MB in the beginning and 144.6MB in the end (delta: 13.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-28 05:41:02,981 INFO L158 Benchmark]: TraceAbstraction took 170276.57ms. Allocated memory was 184.5MB in the beginning and 240.1MB in the end (delta: 55.6MB). Free memory was 144.1MB in the beginning and 113.0MB in the end (delta: 31.1MB). Peak memory consumption was 127.5MB. Max. memory is 8.0GB. [2022-04-28 05:41:02,982 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.11ms. Allocated memory is still 184.5MB. Free memory was 151.1MB in the beginning and 151.0MB in the end (delta: 74.4kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 218.73ms. Allocated memory is still 184.5MB. Free memory was 134.8MB in the beginning and 159.2MB in the end (delta: -24.4MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 25.96ms. Allocated memory is still 184.5MB. Free memory was 159.2MB in the beginning and 157.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 341.96ms. Allocated memory is still 184.5MB. Free memory was 157.7MB in the beginning and 144.6MB in the end (delta: 13.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * TraceAbstraction took 170276.57ms. Allocated memory was 184.5MB in the beginning and 240.1MB in the end (delta: 55.6MB). Free memory was 144.1MB in the beginning and 113.0MB in the end (delta: 31.1MB). Peak memory consumption was 127.5MB. 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, 43 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 170.2s, OverallIterations: 13, TraceHistogramMax: 13, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 11.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 2.1s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 362 SdHoareTripleChecker+Valid, 3.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 279 mSDsluCounter, 2333 SdHoareTripleChecker+Invalid, 3.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1776 mSDsCounter, 238 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 2547 IncrementalHoareTripleChecker+Invalid, 2785 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 238 mSolverCounterUnsat, 557 mSDtfsCounter, 2547 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1589 GetRequests, 1417 SyntacticMatches, 11 SemanticMatches, 161 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 348 ImplicationChecksByTransitivity, 1.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=89occurred in iteration=8, InterpolantAutomatonStates: 112, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 1.5s AutomataMinimizationTime, 13 MinimizatonAttempts, 46 StatesRemovedByMinimization, 10 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 40 LocationsWithAnnotation, 398 PreInvPairs, 497 NumberOfFragments, 1059 HoareAnnotationTreeSize, 398 FomulaSimplifications, 263 FormulaSimplificationTreeSizeReduction, 0.5s HoareSimplificationTime, 40 FomulaSimplificationsInter, 4050 FormulaSimplificationTreeSizeReductionInter, 1.5s 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: 47]: Loop Invariant Derived loop invariant: ((((((((((((r == 0 && a == c + b * k) && s == 1) && 1 <= a) && b == y) && yy == y * y) && q == 0) && 1 <= y) && a == x) && c <= 1) && c == x) && y <= 1) && p == 1) || (((((((((((r == 0 && a == c + b * k) && s == 1) && x <= 1) && 0 <= c) && b == y) && k == 1) && yy == y * y) && q == 0) && 1 <= y) && a == x) && p == 1) - InvariantResult [Line: 39]: Loop Invariant Derived loop invariant: ((((((((((((r == 0 && c < 1) && s == 1) && x <= 1) && 1 <= a) && 0 <= c) && b == y) && yy == y * y) && q == 0) && 1 <= y) && a == x) && y <= 1) && p == 1) || (((((((((((c < 1 && b < 1) && p == 0) && a == y * r + p * x) && r == 1) && 0 <= c) && (-1 + -1 * x) / -2 < y + 1) && (-1 + -1 * x) / -2 < x + 1) && 0 <= b) && q == 1) && s + 1 == 0) && y <= 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:41:03,016 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...