/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 08:27:40,947 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 08:27:40,949 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 08:27:40,979 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 08:27:40,980 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 08:27:40,981 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 08:27:40,981 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 08:27:40,983 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 08:27:40,984 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 08:27:40,984 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 08:27:40,985 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 08:27:40,986 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 08:27:40,986 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 08:27:40,987 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 08:27:40,987 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 08:27:40,988 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 08:27:40,988 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 08:27:40,989 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 08:27:40,990 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 08:27:40,991 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 08:27:40,992 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 08:27:40,995 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 08:27:40,996 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 08:27:40,996 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 08:27:40,997 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 08:27:40,999 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 08:27:40,999 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 08:27:40,999 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 08:27:41,000 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 08:27:41,000 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 08:27:41,000 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 08:27:41,001 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 08:27:41,001 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 08:27:41,002 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 08:27:41,002 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 08:27:41,003 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 08:27:41,003 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 08:27:41,003 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 08:27:41,004 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 08:27:41,004 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 08:27:41,004 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 08:27:41,011 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 08:27:41,011 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 08:27:41,021 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 08:27:41,022 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 08:27:41,022 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 08:27:41,023 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 08:27:41,023 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 08:27:41,023 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 08:27:41,023 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 08:27:41,026 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 08:27:41,026 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 08:27:41,027 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 08:27:41,027 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 08:27:41,028 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 08:27:41,028 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 08:27:41,028 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 08:27:41,028 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 08:27:41,028 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 08:27:41,028 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 08:27:41,028 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-15 08:27:41,216 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 08:27:41,241 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 08:27:41,242 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 08:27:41,243 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 08:27:41,244 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 08:27:41,245 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound5.c [2022-04-15 08:27:41,297 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e250b5255/1bfea4bc782a4335a2228eecc1a0a135/FLAG07d04794e [2022-04-15 08:27:41,619 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 08:27:41,620 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound5.c [2022-04-15 08:27:41,630 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e250b5255/1bfea4bc782a4335a2228eecc1a0a135/FLAG07d04794e [2022-04-15 08:27:42,046 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e250b5255/1bfea4bc782a4335a2228eecc1a0a135 [2022-04-15 08:27:42,048 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 08:27:42,049 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 08:27:42,050 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 08:27:42,051 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 08:27:42,056 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 08:27:42,057 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,058 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4382b15d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42, skipping insertion in model container [2022-04-15 08:27:42,061 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,066 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 08:27:42,085 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 08:27:42,203 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound5.c[489,502] [2022-04-15 08:27:42,242 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 08:27:42,248 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 08:27:42,256 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound5.c[489,502] [2022-04-15 08:27:42,268 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 08:27:42,280 INFO L208 MainTranslator]: Completed translation [2022-04-15 08:27:42,280 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42 WrapperNode [2022-04-15 08:27:42,280 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 08:27:42,281 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 08:27:42,281 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 08:27:42,281 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 08:27:42,288 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,288 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,292 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,292 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,298 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,305 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,306 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,311 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 08:27:42,311 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 08:27:42,311 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 08:27:42,312 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 08:27:42,312 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (1/1) ... [2022-04-15 08:27:42,317 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 08:27:42,324 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:42,333 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-15 08:27:42,344 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-15 08:27:42,360 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 08:27:42,360 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 08:27:42,360 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 08:27:42,360 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 08:27:42,360 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 08:27:42,360 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 08:27:42,361 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 08:27:42,362 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 08:27:42,362 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 08:27:42,362 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 08:27:42,402 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 08:27:42,403 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 08:27:42,552 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 08:27:42,557 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 08:27:42,557 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 08:27:42,558 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 08:27:42 BoogieIcfgContainer [2022-04-15 08:27:42,559 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 08:27:42,560 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 08:27:42,560 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 08:27:42,562 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 08:27:42,562 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 08:27:42" (1/3) ... [2022-04-15 08:27:42,563 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@22403ebb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 08:27:42, skipping insertion in model container [2022-04-15 08:27:42,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:27:42" (2/3) ... [2022-04-15 08:27:42,563 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@22403ebb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 08:27:42, skipping insertion in model container [2022-04-15 08:27:42,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 08:27:42" (3/3) ... [2022-04-15 08:27:42,564 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_unwindbound5.c [2022-04-15 08:27:42,567 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 08:27:42,567 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 08:27:42,604 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 08:27:42,610 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 08:27:42,610 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 08:27:42,635 INFO L276 IsEmpty]: Start isEmpty. Operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:27:42,640 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-15 08:27:42,640 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:42,641 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:42,641 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:42,644 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:42,645 INFO L85 PathProgramCache]: Analyzing trace with hash 1226702723, now seen corresponding path program 1 times [2022-04-15 08:27:42,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:42,650 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [862761445] [2022-04-15 08:27:42,657 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:42,657 INFO L85 PathProgramCache]: Analyzing trace with hash 1226702723, now seen corresponding path program 2 times [2022-04-15 08:27:42,659 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:42,659 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [975337225] [2022-04-15 08:27:42,659 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:42,661 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:42,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:42,826 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 08:27:42,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:42,852 INFO L290 TraceCheckUtils]: 0: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {38#true} is VALID [2022-04-15 08:27:42,853 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume true; {38#true} is VALID [2022-04-15 08:27:42,854 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {38#true} {38#true} #82#return; {38#true} is VALID [2022-04-15 08:27:42,854 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 08:27:42,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:42,866 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-15 08:27:42,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-15 08:27:42,867 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-15 08:27:42,867 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {38#true} #64#return; {39#false} is VALID [2022-04-15 08:27:42,869 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-15 08:27:42,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:42,880 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-15 08:27:42,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-15 08:27:42,882 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-15 08:27:42,882 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #66#return; {39#false} is VALID [2022-04-15 08:27:42,884 INFO L272 TraceCheckUtils]: 0: Hoare triple {38#true} call ULTIMATE.init(); {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 08:27:42,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {38#true} is VALID [2022-04-15 08:27:42,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#true} assume true; {38#true} is VALID [2022-04-15 08:27:42,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} #82#return; {38#true} is VALID [2022-04-15 08:27:42,885 INFO L272 TraceCheckUtils]: 4: Hoare triple {38#true} call #t~ret7 := main(); {38#true} is VALID [2022-04-15 08:27:42,885 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38#true} is VALID [2022-04-15 08:27:42,885 INFO L272 TraceCheckUtils]: 6: Hoare triple {38#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38#true} is VALID [2022-04-15 08:27:42,886 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-15 08:27:42,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-15 08:27:42,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-15 08:27:42,887 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {39#false} {38#true} #64#return; {39#false} is VALID [2022-04-15 08:27:42,888 INFO L272 TraceCheckUtils]: 11: Hoare triple {39#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38#true} is VALID [2022-04-15 08:27:42,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-15 08:27:42,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-15 08:27:42,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-15 08:27:42,889 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {39#false} {39#false} #66#return; {39#false} is VALID [2022-04-15 08:27:42,890 INFO L290 TraceCheckUtils]: 16: Hoare triple {39#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {39#false} is VALID [2022-04-15 08:27:42,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {39#false} assume !true; {39#false} is VALID [2022-04-15 08:27:42,891 INFO L272 TraceCheckUtils]: 18: Hoare triple {39#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {39#false} is VALID [2022-04-15 08:27:42,891 INFO L290 TraceCheckUtils]: 19: Hoare triple {39#false} ~cond := #in~cond; {39#false} is VALID [2022-04-15 08:27:42,891 INFO L290 TraceCheckUtils]: 20: Hoare triple {39#false} assume 0 == ~cond; {39#false} is VALID [2022-04-15 08:27:42,891 INFO L290 TraceCheckUtils]: 21: Hoare triple {39#false} assume !false; {39#false} is VALID [2022-04-15 08:27:42,892 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:27:42,892 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:42,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [975337225] [2022-04-15 08:27:42,893 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [975337225] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:42,893 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:42,893 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 08:27:42,895 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:42,896 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [862761445] [2022-04-15 08:27:42,896 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [862761445] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:42,896 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:42,896 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 08:27:42,896 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1602810410] [2022-04-15 08:27:42,897 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:42,901 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-15 08:27:42,902 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:42,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:42,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:42,932 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 08:27:42,933 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:42,955 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 08:27:42,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 08:27:42,957 INFO L87 Difference]: Start difference. First operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:43,127 INFO L93 Difference]: Finished difference Result 64 states and 97 transitions. [2022-04-15 08:27:43,128 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 08:27:43,128 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-15 08:27:43,129 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:43,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2022-04-15 08:27:43,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,149 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2022-04-15 08:27:43,149 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 97 transitions. [2022-04-15 08:27:43,237 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:43,248 INFO L225 Difference]: With dead ends: 64 [2022-04-15 08:27:43,248 INFO L226 Difference]: Without dead ends: 31 [2022-04-15 08:27:43,251 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 08:27:43,254 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:43,255 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 45 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:27:43,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-15 08:27:43,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 30. [2022-04-15 08:27:43,279 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:43,280 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,280 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,281 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:43,284 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-15 08:27:43,285 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-15 08:27:43,285 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:43,285 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:43,285 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-15 08:27:43,286 INFO L87 Difference]: Start difference. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-15 08:27:43,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:43,288 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-15 08:27:43,288 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-15 08:27:43,289 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:43,289 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:43,289 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:43,289 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:43,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-04-15 08:27:43,292 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 22 [2022-04-15 08:27:43,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:43,292 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-04-15 08:27:43,292 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,292 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 39 transitions. [2022-04-15 08:27:43,326 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:43,326 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-04-15 08:27:43,327 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 08:27:43,327 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:43,327 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:43,328 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 08:27:43,328 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:43,329 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:43,329 INFO L85 PathProgramCache]: Analyzing trace with hash 1346542817, now seen corresponding path program 1 times [2022-04-15 08:27:43,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:43,330 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1195961959] [2022-04-15 08:27:43,333 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:43,333 INFO L85 PathProgramCache]: Analyzing trace with hash 1346542817, now seen corresponding path program 2 times [2022-04-15 08:27:43,333 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:43,334 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [885330263] [2022-04-15 08:27:43,334 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:43,334 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:43,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:43,409 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 08:27:43,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:43,422 INFO L290 TraceCheckUtils]: 0: Hoare triple {319#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,422 INFO L290 TraceCheckUtils]: 1: Hoare triple {309#(= ~counter~0 0)} assume true; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,423 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {309#(= ~counter~0 0)} {304#true} #82#return; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,423 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 08:27:43,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:43,429 INFO L290 TraceCheckUtils]: 0: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-15 08:27:43,429 INFO L290 TraceCheckUtils]: 1: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-15 08:27:43,429 INFO L290 TraceCheckUtils]: 2: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-15 08:27:43,430 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #64#return; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,430 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-15 08:27:43,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:43,450 INFO L290 TraceCheckUtils]: 0: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-15 08:27:43,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-15 08:27:43,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-15 08:27:43,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #66#return; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,453 INFO L272 TraceCheckUtils]: 0: Hoare triple {304#true} call ULTIMATE.init(); {319#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 08:27:43,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {319#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {309#(= ~counter~0 0)} assume true; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,455 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {309#(= ~counter~0 0)} {304#true} #82#return; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,458 INFO L272 TraceCheckUtils]: 4: Hoare triple {309#(= ~counter~0 0)} call #t~ret7 := main(); {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,459 INFO L290 TraceCheckUtils]: 5: Hoare triple {309#(= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,459 INFO L272 TraceCheckUtils]: 6: Hoare triple {309#(= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {304#true} is VALID [2022-04-15 08:27:43,467 INFO L290 TraceCheckUtils]: 7: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-15 08:27:43,496 INFO L290 TraceCheckUtils]: 8: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-15 08:27:43,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-15 08:27:43,500 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #64#return; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,500 INFO L272 TraceCheckUtils]: 11: Hoare triple {309#(= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {304#true} is VALID [2022-04-15 08:27:43,501 INFO L290 TraceCheckUtils]: 12: Hoare triple {304#true} ~cond := #in~cond; {304#true} is VALID [2022-04-15 08:27:43,501 INFO L290 TraceCheckUtils]: 13: Hoare triple {304#true} assume !(0 == ~cond); {304#true} is VALID [2022-04-15 08:27:43,501 INFO L290 TraceCheckUtils]: 14: Hoare triple {304#true} assume true; {304#true} is VALID [2022-04-15 08:27:43,503 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {304#true} {309#(= ~counter~0 0)} #66#return; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,504 INFO L290 TraceCheckUtils]: 16: Hoare triple {309#(= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {309#(= ~counter~0 0)} is VALID [2022-04-15 08:27:43,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {309#(= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {318#(= |main_#t~post6| 0)} is VALID [2022-04-15 08:27:43,505 INFO L290 TraceCheckUtils]: 18: Hoare triple {318#(= |main_#t~post6| 0)} assume !(#t~post6 < 5);havoc #t~post6; {305#false} is VALID [2022-04-15 08:27:43,505 INFO L272 TraceCheckUtils]: 19: Hoare triple {305#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {305#false} is VALID [2022-04-15 08:27:43,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {305#false} ~cond := #in~cond; {305#false} is VALID [2022-04-15 08:27:43,505 INFO L290 TraceCheckUtils]: 21: Hoare triple {305#false} assume 0 == ~cond; {305#false} is VALID [2022-04-15 08:27:43,505 INFO L290 TraceCheckUtils]: 22: Hoare triple {305#false} assume !false; {305#false} is VALID [2022-04-15 08:27:43,506 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:27:43,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:43,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [885330263] [2022-04-15 08:27:43,510 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [885330263] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:43,510 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:43,510 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:43,510 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:43,511 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1195961959] [2022-04-15 08:27:43,511 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1195961959] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:43,511 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:43,512 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:43,512 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [987012507] [2022-04-15 08:27:43,512 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:43,513 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 08:27:43,513 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:43,516 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,535 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:43,535 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:43,535 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:43,535 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:43,535 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:27:43,536 INFO L87 Difference]: Start difference. First operand 30 states and 39 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,702 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:43,702 INFO L93 Difference]: Finished difference Result 42 states and 54 transitions. [2022-04-15 08:27:43,702 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 08:27:43,702 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 08:27:43,703 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:43,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-04-15 08:27:43,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-04-15 08:27:43,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 54 transitions. [2022-04-15 08:27:43,765 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-15 08:27:43,769 INFO L225 Difference]: With dead ends: 42 [2022-04-15 08:27:43,769 INFO L226 Difference]: Without dead ends: 32 [2022-04-15 08:27:43,769 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:27:43,771 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 13 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:43,772 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 65 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:27:43,773 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-15 08:27:43,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-15 08:27:43,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:43,777 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,777 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,777 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:43,779 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-15 08:27:43,779 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-15 08:27:43,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:43,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:43,780 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-15 08:27:43,780 INFO L87 Difference]: Start difference. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-15 08:27:43,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:43,782 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-15 08:27:43,782 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-15 08:27:43,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:43,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:43,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:43,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:43,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:27:43,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-15 08:27:43,785 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 23 [2022-04-15 08:27:43,785 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:43,785 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-15 08:27:43,785 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:27:43,785 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 41 transitions. [2022-04-15 08:27:43,819 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:43,819 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-15 08:27:43,820 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 08:27:43,820 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:43,820 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:43,820 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 08:27:43,820 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:43,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:43,820 INFO L85 PathProgramCache]: Analyzing trace with hash 1348211113, now seen corresponding path program 1 times [2022-04-15 08:27:43,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:43,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [704561147] [2022-04-15 08:27:43,821 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:43,821 INFO L85 PathProgramCache]: Analyzing trace with hash 1348211113, now seen corresponding path program 2 times [2022-04-15 08:27:43,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:43,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1926149031] [2022-04-15 08:27:43,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:43,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:43,836 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:43,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [864615167] [2022-04-15 08:27:43,836 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:43,836 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:43,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:43,838 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-15 08:27:43,864 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-15 08:27:43,903 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 08:27:43,904 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:43,905 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 08:27:43,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:43,925 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:44,041 INFO L272 TraceCheckUtils]: 0: Hoare triple {537#true} call ULTIMATE.init(); {537#true} is VALID [2022-04-15 08:27:44,041 INFO L290 TraceCheckUtils]: 1: Hoare triple {537#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {537#true} is VALID [2022-04-15 08:27:44,041 INFO L290 TraceCheckUtils]: 2: Hoare triple {537#true} assume true; {537#true} is VALID [2022-04-15 08:27:44,041 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {537#true} {537#true} #82#return; {537#true} is VALID [2022-04-15 08:27:44,042 INFO L272 TraceCheckUtils]: 4: Hoare triple {537#true} call #t~ret7 := main(); {537#true} is VALID [2022-04-15 08:27:44,042 INFO L290 TraceCheckUtils]: 5: Hoare triple {537#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {537#true} is VALID [2022-04-15 08:27:44,042 INFO L272 TraceCheckUtils]: 6: Hoare triple {537#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {537#true} is VALID [2022-04-15 08:27:44,042 INFO L290 TraceCheckUtils]: 7: Hoare triple {537#true} ~cond := #in~cond; {537#true} is VALID [2022-04-15 08:27:44,042 INFO L290 TraceCheckUtils]: 8: Hoare triple {537#true} assume !(0 == ~cond); {537#true} is VALID [2022-04-15 08:27:44,042 INFO L290 TraceCheckUtils]: 9: Hoare triple {537#true} assume true; {537#true} is VALID [2022-04-15 08:27:44,042 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {537#true} {537#true} #64#return; {537#true} is VALID [2022-04-15 08:27:44,042 INFO L272 TraceCheckUtils]: 11: Hoare triple {537#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {537#true} is VALID [2022-04-15 08:27:44,042 INFO L290 TraceCheckUtils]: 12: Hoare triple {537#true} ~cond := #in~cond; {537#true} is VALID [2022-04-15 08:27:44,043 INFO L290 TraceCheckUtils]: 13: Hoare triple {537#true} assume !(0 == ~cond); {537#true} is VALID [2022-04-15 08:27:44,043 INFO L290 TraceCheckUtils]: 14: Hoare triple {537#true} assume true; {537#true} is VALID [2022-04-15 08:27:44,043 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {537#true} {537#true} #66#return; {537#true} is VALID [2022-04-15 08:27:44,043 INFO L290 TraceCheckUtils]: 16: Hoare triple {537#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,044 INFO L290 TraceCheckUtils]: 17: Hoare triple {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,044 INFO L290 TraceCheckUtils]: 18: Hoare triple {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,045 INFO L272 TraceCheckUtils]: 19: Hoare triple {590#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {600#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:44,046 INFO L290 TraceCheckUtils]: 20: Hoare triple {600#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {604#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:44,046 INFO L290 TraceCheckUtils]: 21: Hoare triple {604#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {538#false} is VALID [2022-04-15 08:27:44,046 INFO L290 TraceCheckUtils]: 22: Hoare triple {538#false} assume !false; {538#false} is VALID [2022-04-15 08:27:44,046 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:27:44,046 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:27:44,047 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:44,047 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1926149031] [2022-04-15 08:27:44,047 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:27:44,047 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [864615167] [2022-04-15 08:27:44,047 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [864615167] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:44,047 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:44,047 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:44,048 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:44,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [704561147] [2022-04-15 08:27:44,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [704561147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:44,048 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:44,048 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:44,048 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [520092468] [2022-04-15 08:27:44,048 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:44,048 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-15 08:27:44,049 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:44,049 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:27:44,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:44,063 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:44,063 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:44,063 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:44,063 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:27:44,064 INFO L87 Difference]: Start difference. First operand 32 states and 41 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:27:44,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:44,253 INFO L93 Difference]: Finished difference Result 49 states and 66 transitions. [2022-04-15 08:27:44,253 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:27:44,253 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-15 08:27:44,254 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:44,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:27:44,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-15 08:27:44,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:27:44,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-15 08:27:44,257 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-15 08:27:44,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:44,302 INFO L225 Difference]: With dead ends: 49 [2022-04-15 08:27:44,302 INFO L226 Difference]: Without dead ends: 47 [2022-04-15 08:27:44,303 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:27:44,303 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:44,304 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 136 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:27:44,304 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-15 08:27:44,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-04-15 08:27:44,314 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:44,314 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:44,314 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:44,315 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:44,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:44,317 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-15 08:27:44,317 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-15 08:27:44,318 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:44,318 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:44,318 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-15 08:27:44,318 INFO L87 Difference]: Start difference. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-15 08:27:44,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:44,321 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-15 08:27:44,321 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-15 08:27:44,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:44,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:44,321 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:44,321 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:44,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:44,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 63 transitions. [2022-04-15 08:27:44,324 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 63 transitions. Word has length 23 [2022-04-15 08:27:44,324 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:44,324 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 63 transitions. [2022-04-15 08:27:44,324 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:27:44,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 63 transitions. [2022-04-15 08:27:44,380 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-15 08:27:44,380 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-15 08:27:44,380 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 08:27:44,381 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:44,381 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:44,399 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-15 08:27:44,598 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:44,598 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:44,599 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:44,599 INFO L85 PathProgramCache]: Analyzing trace with hash -1060153012, now seen corresponding path program 1 times [2022-04-15 08:27:44,599 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:44,599 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [190429018] [2022-04-15 08:27:44,599 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:44,599 INFO L85 PathProgramCache]: Analyzing trace with hash -1060153012, now seen corresponding path program 2 times [2022-04-15 08:27:44,600 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:44,600 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1190548766] [2022-04-15 08:27:44,600 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:44,600 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:44,624 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:44,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [670063267] [2022-04-15 08:27:44,624 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:44,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:44,625 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:44,626 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-15 08:27:44,627 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-15 08:27:44,687 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:27:44,687 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:44,688 INFO L263 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 08:27:44,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:44,697 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:44,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {896#true} call ULTIMATE.init(); {896#true} is VALID [2022-04-15 08:27:44,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {896#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {896#true} is VALID [2022-04-15 08:27:44,869 INFO L290 TraceCheckUtils]: 2: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-15 08:27:44,869 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {896#true} {896#true} #82#return; {896#true} is VALID [2022-04-15 08:27:44,869 INFO L272 TraceCheckUtils]: 4: Hoare triple {896#true} call #t~ret7 := main(); {896#true} is VALID [2022-04-15 08:27:44,870 INFO L290 TraceCheckUtils]: 5: Hoare triple {896#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {896#true} is VALID [2022-04-15 08:27:44,870 INFO L272 TraceCheckUtils]: 6: Hoare triple {896#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {896#true} is VALID [2022-04-15 08:27:44,870 INFO L290 TraceCheckUtils]: 7: Hoare triple {896#true} ~cond := #in~cond; {896#true} is VALID [2022-04-15 08:27:44,870 INFO L290 TraceCheckUtils]: 8: Hoare triple {896#true} assume !(0 == ~cond); {896#true} is VALID [2022-04-15 08:27:44,870 INFO L290 TraceCheckUtils]: 9: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-15 08:27:44,870 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {896#true} {896#true} #64#return; {896#true} is VALID [2022-04-15 08:27:44,870 INFO L272 TraceCheckUtils]: 11: Hoare triple {896#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {896#true} is VALID [2022-04-15 08:27:44,871 INFO L290 TraceCheckUtils]: 12: Hoare triple {896#true} ~cond := #in~cond; {896#true} is VALID [2022-04-15 08:27:44,871 INFO L290 TraceCheckUtils]: 13: Hoare triple {896#true} assume !(0 == ~cond); {896#true} is VALID [2022-04-15 08:27:44,871 INFO L290 TraceCheckUtils]: 14: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-15 08:27:44,871 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {896#true} {896#true} #66#return; {896#true} is VALID [2022-04-15 08:27:44,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {896#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,875 INFO L290 TraceCheckUtils]: 17: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,876 INFO L272 TraceCheckUtils]: 19: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {896#true} is VALID [2022-04-15 08:27:44,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {896#true} ~cond := #in~cond; {896#true} is VALID [2022-04-15 08:27:44,876 INFO L290 TraceCheckUtils]: 21: Hoare triple {896#true} assume !(0 == ~cond); {896#true} is VALID [2022-04-15 08:27:44,877 INFO L290 TraceCheckUtils]: 22: Hoare triple {896#true} assume true; {896#true} is VALID [2022-04-15 08:27:44,878 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {896#true} {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:44,878 INFO L272 TraceCheckUtils]: 24: Hoare triple {949#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {974#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:44,879 INFO L290 TraceCheckUtils]: 25: Hoare triple {974#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {978#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:44,879 INFO L290 TraceCheckUtils]: 26: Hoare triple {978#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {897#false} is VALID [2022-04-15 08:27:44,880 INFO L290 TraceCheckUtils]: 27: Hoare triple {897#false} assume !false; {897#false} is VALID [2022-04-15 08:27:44,880 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:27:44,880 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:27:44,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:44,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1190548766] [2022-04-15 08:27:44,880 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:27:44,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [670063267] [2022-04-15 08:27:44,881 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [670063267] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:44,881 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:44,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:44,881 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:44,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [190429018] [2022-04-15 08:27:44,881 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [190429018] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:44,881 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:44,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:44,881 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2076171879] [2022-04-15 08:27:44,882 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:44,882 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 08:27:44,882 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:44,882 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 08:27:44,899 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:44,899 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:44,899 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:44,900 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:44,900 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:27:44,900 INFO L87 Difference]: Start difference. First operand 46 states and 63 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 08:27:45,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:45,097 INFO L93 Difference]: Finished difference Result 53 states and 69 transitions. [2022-04-15 08:27:45,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:27:45,097 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 08:27:45,097 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:45,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 08:27:45,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-15 08:27:45,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 08:27:45,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-15 08:27:45,100 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-15 08:27:45,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:45,151 INFO L225 Difference]: With dead ends: 53 [2022-04-15 08:27:45,151 INFO L226 Difference]: Without dead ends: 51 [2022-04-15 08:27:45,151 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:27:45,152 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 9 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:45,152 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 136 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:27:45,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-15 08:27:45,164 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-15 08:27:45,164 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:45,164 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:45,164 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:45,165 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:45,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:45,167 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-15 08:27:45,167 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-15 08:27:45,167 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:45,167 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:45,168 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-15 08:27:45,168 INFO L87 Difference]: Start difference. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-15 08:27:45,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:45,170 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-15 08:27:45,170 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-15 08:27:45,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:45,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:45,170 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:45,171 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:45,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:27:45,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 66 transitions. [2022-04-15 08:27:45,173 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 66 transitions. Word has length 28 [2022-04-15 08:27:45,173 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:45,173 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 66 transitions. [2022-04-15 08:27:45,173 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 08:27:45,173 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 66 transitions. [2022-04-15 08:27:45,226 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:45,227 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-15 08:27:45,227 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 08:27:45,227 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:45,227 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:45,246 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-15 08:27:45,435 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2022-04-15 08:27:45,436 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:45,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:45,436 INFO L85 PathProgramCache]: Analyzing trace with hash -560761015, now seen corresponding path program 1 times [2022-04-15 08:27:45,445 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:45,445 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1543206001] [2022-04-15 08:27:45,446 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:45,446 INFO L85 PathProgramCache]: Analyzing trace with hash -560761015, now seen corresponding path program 2 times [2022-04-15 08:27:45,446 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:45,446 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [359348251] [2022-04-15 08:27:45,446 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:45,446 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:45,500 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:45,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1670523600] [2022-04-15 08:27:45,500 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:45,501 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:45,501 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:45,505 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-15 08:27:45,512 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-15 08:27:45,562 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:27:45,563 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:45,563 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-15 08:27:45,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:45,571 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:45,768 INFO L272 TraceCheckUtils]: 0: Hoare triple {1294#true} call ULTIMATE.init(); {1294#true} is VALID [2022-04-15 08:27:45,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {1294#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1294#true} is VALID [2022-04-15 08:27:45,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,769 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1294#true} {1294#true} #82#return; {1294#true} is VALID [2022-04-15 08:27:45,769 INFO L272 TraceCheckUtils]: 4: Hoare triple {1294#true} call #t~ret7 := main(); {1294#true} is VALID [2022-04-15 08:27:45,769 INFO L290 TraceCheckUtils]: 5: Hoare triple {1294#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1294#true} is VALID [2022-04-15 08:27:45,769 INFO L272 TraceCheckUtils]: 6: Hoare triple {1294#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,769 INFO L290 TraceCheckUtils]: 7: Hoare triple {1294#true} ~cond := #in~cond; {1320#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:27:45,770 INFO L290 TraceCheckUtils]: 8: Hoare triple {1320#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1324#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:27:45,770 INFO L290 TraceCheckUtils]: 9: Hoare triple {1324#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1324#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:27:45,775 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1324#(not (= |assume_abort_if_not_#in~cond| 0))} {1294#true} #64#return; {1331#(<= 1 main_~x~0)} is VALID [2022-04-15 08:27:45,775 INFO L272 TraceCheckUtils]: 11: Hoare triple {1331#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,776 INFO L290 TraceCheckUtils]: 12: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,776 INFO L290 TraceCheckUtils]: 13: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,776 INFO L290 TraceCheckUtils]: 14: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,776 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1294#true} {1331#(<= 1 main_~x~0)} #66#return; {1331#(<= 1 main_~x~0)} is VALID [2022-04-15 08:27:45,777 INFO L290 TraceCheckUtils]: 16: Hoare triple {1331#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:27:45,777 INFO L290 TraceCheckUtils]: 17: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:27:45,778 INFO L290 TraceCheckUtils]: 18: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:27:45,778 INFO L272 TraceCheckUtils]: 19: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,778 INFO L290 TraceCheckUtils]: 20: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,778 INFO L290 TraceCheckUtils]: 21: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,779 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1294#true} {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:27:45,779 INFO L272 TraceCheckUtils]: 24: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,779 INFO L290 TraceCheckUtils]: 25: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,779 INFO L290 TraceCheckUtils]: 26: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,779 INFO L290 TraceCheckUtils]: 27: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,780 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1294#true} {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:27:45,781 INFO L272 TraceCheckUtils]: 29: Hoare triple {1350#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:45,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1394#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:45,782 INFO L290 TraceCheckUtils]: 31: Hoare triple {1394#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1295#false} is VALID [2022-04-15 08:27:45,782 INFO L290 TraceCheckUtils]: 32: Hoare triple {1295#false} assume !false; {1295#false} is VALID [2022-04-15 08:27:45,782 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-15 08:27:45,782 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:27:45,964 INFO L290 TraceCheckUtils]: 32: Hoare triple {1295#false} assume !false; {1295#false} is VALID [2022-04-15 08:27:45,964 INFO L290 TraceCheckUtils]: 31: Hoare triple {1394#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1295#false} is VALID [2022-04-15 08:27:45,965 INFO L290 TraceCheckUtils]: 30: Hoare triple {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1394#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:45,965 INFO L272 TraceCheckUtils]: 29: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1390#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:45,966 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1294#true} {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:27:45,966 INFO L290 TraceCheckUtils]: 27: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,966 INFO L290 TraceCheckUtils]: 26: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,966 INFO L290 TraceCheckUtils]: 25: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,966 INFO L272 TraceCheckUtils]: 24: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,967 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1294#true} {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:27:45,967 INFO L290 TraceCheckUtils]: 22: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,967 INFO L290 TraceCheckUtils]: 21: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,967 INFO L272 TraceCheckUtils]: 19: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,968 INFO L290 TraceCheckUtils]: 18: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:27:45,968 INFO L290 TraceCheckUtils]: 17: Hoare triple {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:27:45,968 INFO L290 TraceCheckUtils]: 16: Hoare triple {1294#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1410#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:27:45,968 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1294#true} {1294#true} #66#return; {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 14: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 13: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 12: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L272 TraceCheckUtils]: 11: Hoare triple {1294#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1294#true} {1294#true} #64#return; {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 9: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 8: Hoare triple {1294#true} assume !(0 == ~cond); {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 7: Hoare triple {1294#true} ~cond := #in~cond; {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L272 TraceCheckUtils]: 6: Hoare triple {1294#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1294#true} is VALID [2022-04-15 08:27:45,969 INFO L290 TraceCheckUtils]: 5: Hoare triple {1294#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1294#true} is VALID [2022-04-15 08:27:45,970 INFO L272 TraceCheckUtils]: 4: Hoare triple {1294#true} call #t~ret7 := main(); {1294#true} is VALID [2022-04-15 08:27:45,970 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1294#true} {1294#true} #82#return; {1294#true} is VALID [2022-04-15 08:27:45,970 INFO L290 TraceCheckUtils]: 2: Hoare triple {1294#true} assume true; {1294#true} is VALID [2022-04-15 08:27:45,970 INFO L290 TraceCheckUtils]: 1: Hoare triple {1294#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1294#true} is VALID [2022-04-15 08:27:45,970 INFO L272 TraceCheckUtils]: 0: Hoare triple {1294#true} call ULTIMATE.init(); {1294#true} is VALID [2022-04-15 08:27:45,970 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-15 08:27:45,970 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:45,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [359348251] [2022-04-15 08:27:45,970 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:27:45,971 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1670523600] [2022-04-15 08:27:45,971 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1670523600] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 08:27:45,971 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 08:27:45,971 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-15 08:27:45,971 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:45,971 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1543206001] [2022-04-15 08:27:45,971 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1543206001] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:45,971 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:45,971 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:45,971 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [916418972] [2022-04-15 08:27:45,971 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:45,972 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-15 08:27:45,972 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:45,972 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:27:45,995 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:45,995 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:45,995 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:45,996 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:45,996 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:27:45,996 INFO L87 Difference]: Start difference. First operand 50 states and 66 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:27:46,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:46,208 INFO L93 Difference]: Finished difference Result 75 states and 107 transitions. [2022-04-15 08:27:46,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:27:46,208 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-15 08:27:46,208 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:46,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:27:46,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-15 08:27:46,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:27:46,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-15 08:27:46,211 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-15 08:27:46,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:46,254 INFO L225 Difference]: With dead ends: 75 [2022-04-15 08:27:46,254 INFO L226 Difference]: Without dead ends: 71 [2022-04-15 08:27:46,254 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-15 08:27:46,255 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:46,255 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 128 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:27:46,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-15 08:27:46,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-15 08:27:46,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:46,280 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-15 08:27:46,280 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-15 08:27:46,281 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-15 08:27:46,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:46,283 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-15 08:27:46,283 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-15 08:27:46,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:46,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:46,284 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-15 08:27:46,284 INFO L87 Difference]: Start difference. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-15 08:27:46,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:46,287 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-15 08:27:46,287 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-15 08:27:46,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:46,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:46,287 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:46,287 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:46,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-15 08:27:46,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 100 transitions. [2022-04-15 08:27:46,290 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 100 transitions. Word has length 33 [2022-04-15 08:27:46,290 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:46,290 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 100 transitions. [2022-04-15 08:27:46,290 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:27:46,290 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 100 transitions. [2022-04-15 08:27:46,368 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:46,369 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-15 08:27:46,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 08:27:46,369 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:46,369 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:46,388 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-15 08:27:46,570 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:46,570 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:46,570 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:46,570 INFO L85 PathProgramCache]: Analyzing trace with hash 201438379, now seen corresponding path program 1 times [2022-04-15 08:27:46,570 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:46,571 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1158636146] [2022-04-15 08:27:46,571 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:46,571 INFO L85 PathProgramCache]: Analyzing trace with hash 201438379, now seen corresponding path program 2 times [2022-04-15 08:27:46,571 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:46,571 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1415281276] [2022-04-15 08:27:46,571 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:46,571 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:46,582 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:46,582 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1424639353] [2022-04-15 08:27:46,582 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:46,582 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:46,582 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:46,583 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-15 08:27:46,634 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-15 08:27:46,664 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:27:46,665 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:46,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 08:27:46,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:46,681 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:46,770 INFO L272 TraceCheckUtils]: 0: Hoare triple {1936#true} call ULTIMATE.init(); {1936#true} is VALID [2022-04-15 08:27:46,770 INFO L290 TraceCheckUtils]: 1: Hoare triple {1936#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1936#true} is VALID [2022-04-15 08:27:46,770 INFO L290 TraceCheckUtils]: 2: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-15 08:27:46,773 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1936#true} {1936#true} #82#return; {1936#true} is VALID [2022-04-15 08:27:46,773 INFO L272 TraceCheckUtils]: 4: Hoare triple {1936#true} call #t~ret7 := main(); {1936#true} is VALID [2022-04-15 08:27:46,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {1936#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1936#true} is VALID [2022-04-15 08:27:46,774 INFO L272 TraceCheckUtils]: 6: Hoare triple {1936#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1936#true} is VALID [2022-04-15 08:27:46,774 INFO L290 TraceCheckUtils]: 7: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-15 08:27:46,774 INFO L290 TraceCheckUtils]: 8: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-15 08:27:46,774 INFO L290 TraceCheckUtils]: 9: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-15 08:27:46,774 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1936#true} {1936#true} #64#return; {1936#true} is VALID [2022-04-15 08:27:46,774 INFO L272 TraceCheckUtils]: 11: Hoare triple {1936#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 12: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 14: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1936#true} {1936#true} #66#return; {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {1936#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {1936#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {1936#true} assume !!(#t~post6 < 5);havoc #t~post6; {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L272 TraceCheckUtils]: 19: Hoare triple {1936#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1936#true} is VALID [2022-04-15 08:27:46,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 21: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 22: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1936#true} {1936#true} #68#return; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L272 TraceCheckUtils]: 24: Hoare triple {1936#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 25: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 26: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 27: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1936#true} {1936#true} #70#return; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L272 TraceCheckUtils]: 29: Hoare triple {1936#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 30: Hoare triple {1936#true} ~cond := #in~cond; {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 31: Hoare triple {1936#true} assume !(0 == ~cond); {1936#true} is VALID [2022-04-15 08:27:46,776 INFO L290 TraceCheckUtils]: 32: Hoare triple {1936#true} assume true; {1936#true} is VALID [2022-04-15 08:27:46,777 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1936#true} {1936#true} #72#return; {1936#true} is VALID [2022-04-15 08:27:46,777 INFO L290 TraceCheckUtils]: 34: Hoare triple {1936#true} assume !(~a~0 != ~b~0); {2043#(= main_~b~0 main_~a~0)} is VALID [2022-04-15 08:27:46,778 INFO L272 TraceCheckUtils]: 35: Hoare triple {2043#(= main_~b~0 main_~a~0)} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2047#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:46,778 INFO L290 TraceCheckUtils]: 36: Hoare triple {2047#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2051#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:46,779 INFO L290 TraceCheckUtils]: 37: Hoare triple {2051#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1937#false} is VALID [2022-04-15 08:27:46,779 INFO L290 TraceCheckUtils]: 38: Hoare triple {1937#false} assume !false; {1937#false} is VALID [2022-04-15 08:27:46,779 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 08:27:46,779 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:27:46,779 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:46,779 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1415281276] [2022-04-15 08:27:46,779 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:27:46,779 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1424639353] [2022-04-15 08:27:46,779 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1424639353] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:46,779 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:46,780 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:46,780 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:46,780 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1158636146] [2022-04-15 08:27:46,780 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1158636146] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:46,780 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:46,780 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:46,780 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [913004209] [2022-04-15 08:27:46,780 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:46,781 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-15 08:27:46,781 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:46,781 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-15 08:27:46,803 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-15 08:27:46,803 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:46,803 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:46,803 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:46,803 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:27:46,804 INFO L87 Difference]: Start difference. First operand 71 states and 100 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-15 08:27:46,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:46,970 INFO L93 Difference]: Finished difference Result 87 states and 123 transitions. [2022-04-15 08:27:46,970 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:27:46,970 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-15 08:27:46,971 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:46,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-15 08:27:46,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-15 08:27:46,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-15 08:27:46,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-15 08:27:46,973 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-15 08:27:47,012 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-15 08:27:47,014 INFO L225 Difference]: With dead ends: 87 [2022-04-15 08:27:47,014 INFO L226 Difference]: Without dead ends: 85 [2022-04-15 08:27:47,014 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:27:47,015 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 5 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:47,015 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 144 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:27:47,015 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-15 08:27:47,035 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 78. [2022-04-15 08:27:47,035 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:47,036 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:47,036 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:47,036 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:47,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:47,039 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-15 08:27:47,039 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-15 08:27:47,040 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:47,040 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:47,040 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-15 08:27:47,040 INFO L87 Difference]: Start difference. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-15 08:27:47,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:47,043 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-15 08:27:47,043 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-15 08:27:47,044 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:47,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:47,044 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:47,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:47,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:47,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 109 transitions. [2022-04-15 08:27:47,047 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 109 transitions. Word has length 39 [2022-04-15 08:27:47,047 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:47,047 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 109 transitions. [2022-04-15 08:27:47,047 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-15 08:27:47,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 109 transitions. [2022-04-15 08:27:47,165 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:47,165 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 109 transitions. [2022-04-15 08:27:47,166 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-15 08:27:47,166 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:47,166 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:47,188 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-15 08:27:47,382 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:47,383 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:47,383 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:47,383 INFO L85 PathProgramCache]: Analyzing trace with hash -1085077998, now seen corresponding path program 1 times [2022-04-15 08:27:47,383 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:47,383 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1122290934] [2022-04-15 08:27:47,383 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:47,383 INFO L85 PathProgramCache]: Analyzing trace with hash -1085077998, now seen corresponding path program 2 times [2022-04-15 08:27:47,384 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:47,384 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1994232424] [2022-04-15 08:27:47,384 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:47,384 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:47,394 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:47,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [499851336] [2022-04-15 08:27:47,394 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:47,395 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:47,395 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:47,395 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-15 08:27:47,396 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-15 08:27:47,431 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:27:47,431 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:47,432 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 08:27:47,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:47,442 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:47,609 INFO L272 TraceCheckUtils]: 0: Hoare triple {2559#true} call ULTIMATE.init(); {2559#true} is VALID [2022-04-15 08:27:47,610 INFO L290 TraceCheckUtils]: 1: Hoare triple {2559#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,610 INFO L290 TraceCheckUtils]: 2: Hoare triple {2567#(<= ~counter~0 0)} assume true; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,610 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2567#(<= ~counter~0 0)} {2559#true} #82#return; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,611 INFO L272 TraceCheckUtils]: 4: Hoare triple {2567#(<= ~counter~0 0)} call #t~ret7 := main(); {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,611 INFO L290 TraceCheckUtils]: 5: Hoare triple {2567#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,611 INFO L272 TraceCheckUtils]: 6: Hoare triple {2567#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,612 INFO L290 TraceCheckUtils]: 7: Hoare triple {2567#(<= ~counter~0 0)} ~cond := #in~cond; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,612 INFO L290 TraceCheckUtils]: 8: Hoare triple {2567#(<= ~counter~0 0)} assume !(0 == ~cond); {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,612 INFO L290 TraceCheckUtils]: 9: Hoare triple {2567#(<= ~counter~0 0)} assume true; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,613 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2567#(<= ~counter~0 0)} {2567#(<= ~counter~0 0)} #64#return; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,613 INFO L272 TraceCheckUtils]: 11: Hoare triple {2567#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,613 INFO L290 TraceCheckUtils]: 12: Hoare triple {2567#(<= ~counter~0 0)} ~cond := #in~cond; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,614 INFO L290 TraceCheckUtils]: 13: Hoare triple {2567#(<= ~counter~0 0)} assume !(0 == ~cond); {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,614 INFO L290 TraceCheckUtils]: 14: Hoare triple {2567#(<= ~counter~0 0)} assume true; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,614 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2567#(<= ~counter~0 0)} {2567#(<= ~counter~0 0)} #66#return; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,615 INFO L290 TraceCheckUtils]: 16: Hoare triple {2567#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2567#(<= ~counter~0 0)} is VALID [2022-04-15 08:27:47,615 INFO L290 TraceCheckUtils]: 17: Hoare triple {2567#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,615 INFO L290 TraceCheckUtils]: 18: Hoare triple {2616#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,616 INFO L272 TraceCheckUtils]: 19: Hoare triple {2616#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {2616#(<= ~counter~0 1)} ~cond := #in~cond; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,616 INFO L290 TraceCheckUtils]: 21: Hoare triple {2616#(<= ~counter~0 1)} assume !(0 == ~cond); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,617 INFO L290 TraceCheckUtils]: 22: Hoare triple {2616#(<= ~counter~0 1)} assume true; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,617 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2616#(<= ~counter~0 1)} {2616#(<= ~counter~0 1)} #68#return; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,618 INFO L272 TraceCheckUtils]: 24: Hoare triple {2616#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,618 INFO L290 TraceCheckUtils]: 25: Hoare triple {2616#(<= ~counter~0 1)} ~cond := #in~cond; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,619 INFO L290 TraceCheckUtils]: 26: Hoare triple {2616#(<= ~counter~0 1)} assume !(0 == ~cond); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,620 INFO L290 TraceCheckUtils]: 27: Hoare triple {2616#(<= ~counter~0 1)} assume true; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,625 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2616#(<= ~counter~0 1)} {2616#(<= ~counter~0 1)} #70#return; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,627 INFO L272 TraceCheckUtils]: 29: Hoare triple {2616#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,627 INFO L290 TraceCheckUtils]: 30: Hoare triple {2616#(<= ~counter~0 1)} ~cond := #in~cond; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,627 INFO L290 TraceCheckUtils]: 31: Hoare triple {2616#(<= ~counter~0 1)} assume !(0 == ~cond); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,629 INFO L290 TraceCheckUtils]: 32: Hoare triple {2616#(<= ~counter~0 1)} assume true; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,630 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2616#(<= ~counter~0 1)} {2616#(<= ~counter~0 1)} #72#return; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,631 INFO L290 TraceCheckUtils]: 34: Hoare triple {2616#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,631 INFO L290 TraceCheckUtils]: 35: Hoare triple {2616#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2616#(<= ~counter~0 1)} is VALID [2022-04-15 08:27:47,632 INFO L290 TraceCheckUtils]: 36: Hoare triple {2616#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2674#(<= |main_#t~post6| 1)} is VALID [2022-04-15 08:27:47,632 INFO L290 TraceCheckUtils]: 37: Hoare triple {2674#(<= |main_#t~post6| 1)} assume !(#t~post6 < 5);havoc #t~post6; {2560#false} is VALID [2022-04-15 08:27:47,632 INFO L272 TraceCheckUtils]: 38: Hoare triple {2560#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2560#false} is VALID [2022-04-15 08:27:47,632 INFO L290 TraceCheckUtils]: 39: Hoare triple {2560#false} ~cond := #in~cond; {2560#false} is VALID [2022-04-15 08:27:47,632 INFO L290 TraceCheckUtils]: 40: Hoare triple {2560#false} assume 0 == ~cond; {2560#false} is VALID [2022-04-15 08:27:47,632 INFO L290 TraceCheckUtils]: 41: Hoare triple {2560#false} assume !false; {2560#false} is VALID [2022-04-15 08:27:47,633 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 08:27:47,633 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:27:47,796 INFO L290 TraceCheckUtils]: 41: Hoare triple {2560#false} assume !false; {2560#false} is VALID [2022-04-15 08:27:47,797 INFO L290 TraceCheckUtils]: 40: Hoare triple {2560#false} assume 0 == ~cond; {2560#false} is VALID [2022-04-15 08:27:47,797 INFO L290 TraceCheckUtils]: 39: Hoare triple {2560#false} ~cond := #in~cond; {2560#false} is VALID [2022-04-15 08:27:47,797 INFO L272 TraceCheckUtils]: 38: Hoare triple {2560#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2560#false} is VALID [2022-04-15 08:27:47,797 INFO L290 TraceCheckUtils]: 37: Hoare triple {2702#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {2560#false} is VALID [2022-04-15 08:27:47,797 INFO L290 TraceCheckUtils]: 36: Hoare triple {2706#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2702#(< |main_#t~post6| 5)} is VALID [2022-04-15 08:27:47,798 INFO L290 TraceCheckUtils]: 35: Hoare triple {2706#(< ~counter~0 5)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,798 INFO L290 TraceCheckUtils]: 34: Hoare triple {2706#(< ~counter~0 5)} assume !!(~a~0 != ~b~0); {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,798 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2559#true} {2706#(< ~counter~0 5)} #72#return; {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,798 INFO L290 TraceCheckUtils]: 32: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-15 08:27:47,799 INFO L290 TraceCheckUtils]: 31: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-15 08:27:47,799 INFO L290 TraceCheckUtils]: 30: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-15 08:27:47,799 INFO L272 TraceCheckUtils]: 29: Hoare triple {2706#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2559#true} is VALID [2022-04-15 08:27:47,799 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2559#true} {2706#(< ~counter~0 5)} #70#return; {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,799 INFO L290 TraceCheckUtils]: 27: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-15 08:27:47,799 INFO L290 TraceCheckUtils]: 26: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-15 08:27:47,799 INFO L290 TraceCheckUtils]: 25: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-15 08:27:47,800 INFO L272 TraceCheckUtils]: 24: Hoare triple {2706#(< ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2559#true} is VALID [2022-04-15 08:27:47,800 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2559#true} {2706#(< ~counter~0 5)} #68#return; {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,800 INFO L290 TraceCheckUtils]: 22: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-15 08:27:47,800 INFO L290 TraceCheckUtils]: 21: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-15 08:27:47,800 INFO L290 TraceCheckUtils]: 20: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-15 08:27:47,800 INFO L272 TraceCheckUtils]: 19: Hoare triple {2706#(< ~counter~0 5)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2559#true} is VALID [2022-04-15 08:27:47,800 INFO L290 TraceCheckUtils]: 18: Hoare triple {2706#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,801 INFO L290 TraceCheckUtils]: 17: Hoare triple {2764#(< ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2706#(< ~counter~0 5)} is VALID [2022-04-15 08:27:47,801 INFO L290 TraceCheckUtils]: 16: Hoare triple {2764#(< ~counter~0 4)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,802 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2559#true} {2764#(< ~counter~0 4)} #66#return; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,802 INFO L290 TraceCheckUtils]: 14: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-15 08:27:47,802 INFO L290 TraceCheckUtils]: 13: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-15 08:27:47,802 INFO L290 TraceCheckUtils]: 12: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-15 08:27:47,802 INFO L272 TraceCheckUtils]: 11: Hoare triple {2764#(< ~counter~0 4)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2559#true} is VALID [2022-04-15 08:27:47,802 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2559#true} {2764#(< ~counter~0 4)} #64#return; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,802 INFO L290 TraceCheckUtils]: 9: Hoare triple {2559#true} assume true; {2559#true} is VALID [2022-04-15 08:27:47,802 INFO L290 TraceCheckUtils]: 8: Hoare triple {2559#true} assume !(0 == ~cond); {2559#true} is VALID [2022-04-15 08:27:47,803 INFO L290 TraceCheckUtils]: 7: Hoare triple {2559#true} ~cond := #in~cond; {2559#true} is VALID [2022-04-15 08:27:47,803 INFO L272 TraceCheckUtils]: 6: Hoare triple {2764#(< ~counter~0 4)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2559#true} is VALID [2022-04-15 08:27:47,803 INFO L290 TraceCheckUtils]: 5: Hoare triple {2764#(< ~counter~0 4)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,803 INFO L272 TraceCheckUtils]: 4: Hoare triple {2764#(< ~counter~0 4)} call #t~ret7 := main(); {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,805 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2764#(< ~counter~0 4)} {2559#true} #82#return; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,805 INFO L290 TraceCheckUtils]: 2: Hoare triple {2764#(< ~counter~0 4)} assume true; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {2559#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2764#(< ~counter~0 4)} is VALID [2022-04-15 08:27:47,806 INFO L272 TraceCheckUtils]: 0: Hoare triple {2559#true} call ULTIMATE.init(); {2559#true} is VALID [2022-04-15 08:27:47,807 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 08:27:47,808 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:47,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1994232424] [2022-04-15 08:27:47,808 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:27:47,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [499851336] [2022-04-15 08:27:47,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [499851336] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:27:47,808 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:27:47,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 08:27:47,808 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:47,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1122290934] [2022-04-15 08:27:47,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1122290934] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:47,808 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:47,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:47,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [583709043] [2022-04-15 08:27:47,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:47,809 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-15 08:27:47,809 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:47,809 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 08:27:47,829 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:47,829 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:47,829 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:47,829 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:47,829 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 08:27:47,829 INFO L87 Difference]: Start difference. First operand 78 states and 109 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 08:27:48,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:48,005 INFO L93 Difference]: Finished difference Result 121 states and 152 transitions. [2022-04-15 08:27:48,005 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 08:27:48,005 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-15 08:27:48,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:48,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 08:27:48,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 74 transitions. [2022-04-15 08:27:48,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 08:27:48,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 74 transitions. [2022-04-15 08:27:48,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 74 transitions. [2022-04-15 08:27:48,064 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-15 08:27:48,067 INFO L225 Difference]: With dead ends: 121 [2022-04-15 08:27:48,067 INFO L226 Difference]: Without dead ends: 102 [2022-04-15 08:27:48,068 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:27:48,069 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 13 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:48,069 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 118 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:27:48,070 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-15 08:27:48,129 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 100. [2022-04-15 08:27:48,129 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:48,129 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:48,129 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:48,129 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:48,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:48,133 INFO L93 Difference]: Finished difference Result 102 states and 128 transitions. [2022-04-15 08:27:48,133 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 128 transitions. [2022-04-15 08:27:48,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:48,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:48,134 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 102 states. [2022-04-15 08:27:48,135 INFO L87 Difference]: Start difference. First operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 102 states. [2022-04-15 08:27:48,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:48,139 INFO L93 Difference]: Finished difference Result 102 states and 128 transitions. [2022-04-15 08:27:48,139 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 128 transitions. [2022-04-15 08:27:48,139 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:48,139 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:48,139 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:48,139 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:48,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 57 states have (on average 1.2105263157894737) internal successors, (69), 63 states have internal predecessors, (69), 31 states have call successors, (31), 13 states have call predecessors, (31), 11 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:27:48,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 127 transitions. [2022-04-15 08:27:48,142 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 127 transitions. Word has length 42 [2022-04-15 08:27:48,142 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:48,142 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 127 transitions. [2022-04-15 08:27:48,142 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (8), 4 states have call predecessors, (8), 2 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 08:27:48,142 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 100 states and 127 transitions. [2022-04-15 08:27:48,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:48,266 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-15 08:27:48,266 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-15 08:27:48,266 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:48,266 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:48,282 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-15 08:27:48,475 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:48,475 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:48,476 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:48,476 INFO L85 PathProgramCache]: Analyzing trace with hash -1083409702, now seen corresponding path program 1 times [2022-04-15 08:27:48,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:48,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [621381835] [2022-04-15 08:27:48,476 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:48,476 INFO L85 PathProgramCache]: Analyzing trace with hash -1083409702, now seen corresponding path program 2 times [2022-04-15 08:27:48,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:48,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [826688753] [2022-04-15 08:27:48,476 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:48,476 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:48,511 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:48,512 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1722859359] [2022-04-15 08:27:48,512 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:48,512 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:48,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:48,513 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-15 08:27:48,514 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-15 08:27:48,553 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:27:48,553 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:48,557 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 08:27:48,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:48,565 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:48,716 INFO L272 TraceCheckUtils]: 0: Hoare triple {3466#true} call ULTIMATE.init(); {3466#true} is VALID [2022-04-15 08:27:48,716 INFO L290 TraceCheckUtils]: 1: Hoare triple {3466#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3466#true} is VALID [2022-04-15 08:27:48,716 INFO L290 TraceCheckUtils]: 2: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-15 08:27:48,716 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3466#true} {3466#true} #82#return; {3466#true} is VALID [2022-04-15 08:27:48,716 INFO L272 TraceCheckUtils]: 4: Hoare triple {3466#true} call #t~ret7 := main(); {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 5: Hoare triple {3466#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L272 TraceCheckUtils]: 6: Hoare triple {3466#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 9: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3466#true} {3466#true} #64#return; {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L272 TraceCheckUtils]: 11: Hoare triple {3466#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 12: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 13: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L290 TraceCheckUtils]: 14: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-15 08:27:48,717 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3466#true} {3466#true} #66#return; {3466#true} is VALID [2022-04-15 08:27:48,718 INFO L290 TraceCheckUtils]: 16: Hoare triple {3466#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,718 INFO L290 TraceCheckUtils]: 17: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,719 INFO L290 TraceCheckUtils]: 18: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,719 INFO L272 TraceCheckUtils]: 19: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3466#true} is VALID [2022-04-15 08:27:48,719 INFO L290 TraceCheckUtils]: 20: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-15 08:27:48,719 INFO L290 TraceCheckUtils]: 21: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-15 08:27:48,719 INFO L290 TraceCheckUtils]: 22: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-15 08:27:48,719 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3466#true} {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #68#return; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,720 INFO L272 TraceCheckUtils]: 24: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3466#true} is VALID [2022-04-15 08:27:48,720 INFO L290 TraceCheckUtils]: 25: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-15 08:27:48,720 INFO L290 TraceCheckUtils]: 26: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-15 08:27:48,720 INFO L290 TraceCheckUtils]: 27: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-15 08:27:48,720 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3466#true} {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #70#return; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,720 INFO L272 TraceCheckUtils]: 29: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3466#true} is VALID [2022-04-15 08:27:48,720 INFO L290 TraceCheckUtils]: 30: Hoare triple {3466#true} ~cond := #in~cond; {3466#true} is VALID [2022-04-15 08:27:48,721 INFO L290 TraceCheckUtils]: 31: Hoare triple {3466#true} assume !(0 == ~cond); {3466#true} is VALID [2022-04-15 08:27:48,721 INFO L290 TraceCheckUtils]: 32: Hoare triple {3466#true} assume true; {3466#true} is VALID [2022-04-15 08:27:48,721 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3466#true} {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #72#return; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,721 INFO L290 TraceCheckUtils]: 34: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,722 INFO L290 TraceCheckUtils]: 35: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,722 INFO L290 TraceCheckUtils]: 36: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,722 INFO L290 TraceCheckUtils]: 37: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:27:48,727 INFO L272 TraceCheckUtils]: 38: Hoare triple {3519#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3586#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:48,727 INFO L290 TraceCheckUtils]: 39: Hoare triple {3586#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3590#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:48,727 INFO L290 TraceCheckUtils]: 40: Hoare triple {3590#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3467#false} is VALID [2022-04-15 08:27:48,727 INFO L290 TraceCheckUtils]: 41: Hoare triple {3467#false} assume !false; {3467#false} is VALID [2022-04-15 08:27:48,727 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 08:27:48,727 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:27:48,728 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:27:48,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [826688753] [2022-04-15 08:27:48,728 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:27:48,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1722859359] [2022-04-15 08:27:48,728 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1722859359] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:48,728 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:48,728 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:48,728 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:27:48,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [621381835] [2022-04-15 08:27:48,728 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [621381835] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:27:48,728 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:27:48,728 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:27:48,728 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [640674886] [2022-04-15 08:27:48,728 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:27:48,729 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 42 [2022-04-15 08:27:48,729 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:27:48,729 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:27:48,747 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:48,748 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:27:48,748 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:48,748 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:27:48,748 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:27:48,748 INFO L87 Difference]: Start difference. First operand 100 states and 127 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:27:48,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:48,936 INFO L93 Difference]: Finished difference Result 106 states and 132 transitions. [2022-04-15 08:27:48,937 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:27:48,937 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 42 [2022-04-15 08:27:48,937 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:27:48,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:27:48,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 62 transitions. [2022-04-15 08:27:48,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:27:48,939 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 62 transitions. [2022-04-15 08:27:48,939 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 62 transitions. [2022-04-15 08:27:48,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:48,980 INFO L225 Difference]: With dead ends: 106 [2022-04-15 08:27:48,980 INFO L226 Difference]: Without dead ends: 103 [2022-04-15 08:27:48,981 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:27:48,981 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 7 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:27:48,981 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 132 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:27:48,982 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-04-15 08:27:49,030 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 103. [2022-04-15 08:27:49,030 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:27:49,031 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 08:27:49,031 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 08:27:49,031 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 08:27:49,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:49,034 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2022-04-15 08:27:49,034 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-15 08:27:49,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:49,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:49,035 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 103 states. [2022-04-15 08:27:49,035 INFO L87 Difference]: Start difference. First operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 103 states. [2022-04-15 08:27:49,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:27:49,037 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2022-04-15 08:27:49,037 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-15 08:27:49,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:27:49,038 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:27:49,038 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:27:49,038 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:27:49,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 60 states have (on average 1.2) internal successors, (72), 66 states have internal predecessors, (72), 30 states have call successors, (30), 14 states have call predecessors, (30), 12 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 08:27:49,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 128 transitions. [2022-04-15 08:27:49,042 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 128 transitions. Word has length 42 [2022-04-15 08:27:49,042 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:27:49,042 INFO L478 AbstractCegarLoop]: Abstraction has 103 states and 128 transitions. [2022-04-15 08:27:49,042 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:27:49,042 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 128 transitions. [2022-04-15 08:27:49,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:27:49,155 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-15 08:27:49,155 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-15 08:27:49,155 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:27:49,155 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:27:49,193 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-15 08:27:49,394 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:49,394 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:27:49,395 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:27:49,395 INFO L85 PathProgramCache]: Analyzing trace with hash -1376219446, now seen corresponding path program 1 times [2022-04-15 08:27:49,395 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:27:49,395 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [755544149] [2022-04-15 08:27:49,395 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:27:49,395 INFO L85 PathProgramCache]: Analyzing trace with hash -1376219446, now seen corresponding path program 2 times [2022-04-15 08:27:49,395 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:27:49,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1412802419] [2022-04-15 08:27:49,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:27:49,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:27:49,405 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:27:49,405 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1979942783] [2022-04-15 08:27:49,406 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:27:49,406 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:27:49,406 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:27:49,421 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-15 08:27:49,432 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-15 08:27:49,466 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:27:49,467 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:27:49,467 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 08:27:49,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:27:49,476 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:27:49,586 INFO L272 TraceCheckUtils]: 0: Hoare triple {4222#true} call ULTIMATE.init(); {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {4222#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4222#true} {4222#true} #82#return; {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L272 TraceCheckUtils]: 4: Hoare triple {4222#true} call #t~ret7 := main(); {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L290 TraceCheckUtils]: 5: Hoare triple {4222#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L272 TraceCheckUtils]: 6: Hoare triple {4222#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L290 TraceCheckUtils]: 7: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L290 TraceCheckUtils]: 8: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:27:49,586 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4222#true} {4222#true} #64#return; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L272 TraceCheckUtils]: 11: Hoare triple {4222#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 12: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 13: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 14: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4222#true} {4222#true} #66#return; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 16: Hoare triple {4222#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 17: Hoare triple {4222#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 18: Hoare triple {4222#true} assume !!(#t~post6 < 5);havoc #t~post6; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L272 TraceCheckUtils]: 19: Hoare triple {4222#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 21: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L290 TraceCheckUtils]: 22: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4222#true} {4222#true} #68#return; {4222#true} is VALID [2022-04-15 08:27:49,587 INFO L272 TraceCheckUtils]: 24: Hoare triple {4222#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:27:49,588 INFO L290 TraceCheckUtils]: 25: Hoare triple {4222#true} ~cond := #in~cond; {4302#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:49,588 INFO L290 TraceCheckUtils]: 26: Hoare triple {4302#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:27:49,588 INFO L290 TraceCheckUtils]: 27: Hoare triple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:27:49,589 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} {4222#true} #70#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:27:49,589 INFO L272 TraceCheckUtils]: 29: Hoare triple {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:27:49,589 INFO L290 TraceCheckUtils]: 30: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:27:49,589 INFO L290 TraceCheckUtils]: 31: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:27:49,589 INFO L290 TraceCheckUtils]: 32: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:27:49,590 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4222#true} {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #72#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:27:49,590 INFO L290 TraceCheckUtils]: 34: Hoare triple {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:27:49,590 INFO L272 TraceCheckUtils]: 35: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:27:49,590 INFO L290 TraceCheckUtils]: 36: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:27:49,590 INFO L290 TraceCheckUtils]: 37: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:27:49,590 INFO L290 TraceCheckUtils]: 38: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:27:49,591 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4222#true} {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:27:49,591 INFO L272 TraceCheckUtils]: 40: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:27:49,592 INFO L290 TraceCheckUtils]: 41: Hoare triple {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4355#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:27:49,592 INFO L290 TraceCheckUtils]: 42: Hoare triple {4355#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4223#false} is VALID [2022-04-15 08:27:49,592 INFO L290 TraceCheckUtils]: 43: Hoare triple {4223#false} assume !false; {4223#false} is VALID [2022-04-15 08:27:49,592 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 08:27:49,592 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:28:09,531 INFO L290 TraceCheckUtils]: 43: Hoare triple {4223#false} assume !false; {4223#false} is VALID [2022-04-15 08:28:09,532 INFO L290 TraceCheckUtils]: 42: Hoare triple {4355#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4223#false} is VALID [2022-04-15 08:28:09,532 INFO L290 TraceCheckUtils]: 41: Hoare triple {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4355#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:09,533 INFO L272 TraceCheckUtils]: 40: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {4351#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:28:09,534 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4222#true} {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:09,534 INFO L290 TraceCheckUtils]: 38: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:28:09,534 INFO L290 TraceCheckUtils]: 37: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:28:09,534 INFO L290 TraceCheckUtils]: 36: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:28:09,534 INFO L272 TraceCheckUtils]: 35: Hoare triple {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:28:09,534 INFO L290 TraceCheckUtils]: 34: Hoare triple {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {4332#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:09,535 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4222#true} {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #72#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:09,535 INFO L290 TraceCheckUtils]: 32: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:28:09,535 INFO L290 TraceCheckUtils]: 31: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:28:09,535 INFO L290 TraceCheckUtils]: 30: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:28:09,535 INFO L272 TraceCheckUtils]: 29: Hoare triple {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:28:09,536 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} {4222#true} #70#return; {4313#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:09,536 INFO L290 TraceCheckUtils]: 27: Hoare triple {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 26: Hoare triple {4416#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4306#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 25: Hoare triple {4222#true} ~cond := #in~cond; {4416#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:28:09,537 INFO L272 TraceCheckUtils]: 24: Hoare triple {4222#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4222#true} {4222#true} #68#return; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 22: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 21: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L272 TraceCheckUtils]: 19: Hoare triple {4222#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {4222#true} assume !!(#t~post6 < 5);havoc #t~post6; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {4222#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 16: Hoare triple {4222#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4222#true} {4222#true} #66#return; {4222#true} is VALID [2022-04-15 08:28:09,537 INFO L290 TraceCheckUtils]: 14: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 13: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 12: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L272 TraceCheckUtils]: 11: Hoare triple {4222#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4222#true} {4222#true} #64#return; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 9: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 8: Hoare triple {4222#true} assume !(0 == ~cond); {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 7: Hoare triple {4222#true} ~cond := #in~cond; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L272 TraceCheckUtils]: 6: Hoare triple {4222#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 5: Hoare triple {4222#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L272 TraceCheckUtils]: 4: Hoare triple {4222#true} call #t~ret7 := main(); {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4222#true} {4222#true} #82#return; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 2: Hoare triple {4222#true} assume true; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L290 TraceCheckUtils]: 1: Hoare triple {4222#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4222#true} is VALID [2022-04-15 08:28:09,538 INFO L272 TraceCheckUtils]: 0: Hoare triple {4222#true} call ULTIMATE.init(); {4222#true} is VALID [2022-04-15 08:28:09,539 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 08:28:09,539 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:28:09,539 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1412802419] [2022-04-15 08:28:09,539 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:28:09,539 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1979942783] [2022-04-15 08:28:09,539 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1979942783] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:28:09,539 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:28:09,539 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 08:28:09,539 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:28:09,539 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [755544149] [2022-04-15 08:28:09,539 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [755544149] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:28:09,539 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:28:09,539 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:28:09,539 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1067497741] [2022-04-15 08:28:09,540 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:28:09,540 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-15 08:28:09,540 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:28:09,540 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:28:09,564 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:28:09,564 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:28:09,564 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:28:09,564 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:28:09,564 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:28:09,565 INFO L87 Difference]: Start difference. First operand 103 states and 128 transitions. Second operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:28:10,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:28:10,173 INFO L93 Difference]: Finished difference Result 118 states and 148 transitions. [2022-04-15 08:28:10,173 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:28:10,173 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-15 08:28:10,173 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:28:10,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:28:10,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-04-15 08:28:10,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:28:10,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-04-15 08:28:10,180 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 60 transitions. [2022-04-15 08:28:10,233 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:28:10,235 INFO L225 Difference]: With dead ends: 118 [2022-04-15 08:28:10,235 INFO L226 Difference]: Without dead ends: 106 [2022-04-15 08:28:10,237 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-15 08:28:10,238 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 15 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 165 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 165 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 08:28:10,238 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 141 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 165 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 08:28:10,239 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-04-15 08:28:10,296 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 104. [2022-04-15 08:28:10,296 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:28:10,297 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-15 08:28:10,298 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-15 08:28:10,298 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-15 08:28:10,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:28:10,301 INFO L93 Difference]: Finished difference Result 106 states and 133 transitions. [2022-04-15 08:28:10,301 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 133 transitions. [2022-04-15 08:28:10,302 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:28:10,302 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:28:10,303 INFO L74 IsIncluded]: Start isIncluded. First operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) Second operand 106 states. [2022-04-15 08:28:10,303 INFO L87 Difference]: Start difference. First operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) Second operand 106 states. [2022-04-15 08:28:10,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:28:10,307 INFO L93 Difference]: Finished difference Result 106 states and 133 transitions. [2022-04-15 08:28:10,307 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 133 transitions. [2022-04-15 08:28:10,307 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:28:10,307 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:28:10,307 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:28:10,307 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:28:10,307 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 104 states, 60 states have (on average 1.1833333333333333) internal successors, (71), 67 states have internal predecessors, (71), 31 states have call successors, (31), 13 states have call predecessors, (31), 12 states have return successors, (28), 23 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-15 08:28:10,309 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 130 transitions. [2022-04-15 08:28:10,309 INFO L78 Accepts]: Start accepts. Automaton has 104 states and 130 transitions. Word has length 44 [2022-04-15 08:28:10,309 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:28:10,310 INFO L478 AbstractCegarLoop]: Abstraction has 104 states and 130 transitions. [2022-04-15 08:28:10,310 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:28:10,310 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 104 states and 130 transitions. [2022-04-15 08:28:10,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:28:10,469 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 130 transitions. [2022-04-15 08:28:10,470 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-15 08:28:10,470 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:28:10,470 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:28:10,489 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-15 08:28:10,689 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:28:10,689 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:28:10,689 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:28:10,690 INFO L85 PathProgramCache]: Analyzing trace with hash -1137310021, now seen corresponding path program 3 times [2022-04-15 08:28:10,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:28:10,690 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [632090157] [2022-04-15 08:28:10,690 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:28:10,690 INFO L85 PathProgramCache]: Analyzing trace with hash -1137310021, now seen corresponding path program 4 times [2022-04-15 08:28:10,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:28:10,690 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [237708770] [2022-04-15 08:28:10,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:28:10,690 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:28:10,713 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:28:10,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [270876074] [2022-04-15 08:28:10,713 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:28:10,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:28:10,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:28:10,728 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-15 08:28:10,732 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-15 08:28:10,770 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:28:10,770 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:28:10,771 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-15 08:28:10,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:28:10,788 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:28:11,202 INFO L272 TraceCheckUtils]: 0: Hoare triple {5156#true} call ULTIMATE.init(); {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {5156#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5156#true} {5156#true} #82#return; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {5156#true} call #t~ret7 := main(); {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {5156#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L272 TraceCheckUtils]: 6: Hoare triple {5156#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L290 TraceCheckUtils]: 7: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L290 TraceCheckUtils]: 8: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L290 TraceCheckUtils]: 9: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5156#true} {5156#true} #64#return; {5156#true} is VALID [2022-04-15 08:28:11,203 INFO L272 TraceCheckUtils]: 11: Hoare triple {5156#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:11,204 INFO L290 TraceCheckUtils]: 12: Hoare triple {5156#true} ~cond := #in~cond; {5197#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:28:11,204 INFO L290 TraceCheckUtils]: 13: Hoare triple {5197#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5201#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:28:11,204 INFO L290 TraceCheckUtils]: 14: Hoare triple {5201#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5201#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:28:11,205 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5201#(not (= |assume_abort_if_not_#in~cond| 0))} {5156#true} #66#return; {5208#(<= 1 main_~y~0)} is VALID [2022-04-15 08:28:11,205 INFO L290 TraceCheckUtils]: 16: Hoare triple {5208#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,206 INFO L290 TraceCheckUtils]: 17: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,206 INFO L290 TraceCheckUtils]: 18: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,206 INFO L272 TraceCheckUtils]: 19: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:11,206 INFO L290 TraceCheckUtils]: 20: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:11,206 INFO L290 TraceCheckUtils]: 21: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:11,206 INFO L290 TraceCheckUtils]: 22: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:11,207 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5156#true} {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} #68#return; {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,207 INFO L272 TraceCheckUtils]: 24: Hoare triple {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:11,207 INFO L290 TraceCheckUtils]: 25: Hoare triple {5156#true} ~cond := #in~cond; {5240#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:11,207 INFO L290 TraceCheckUtils]: 26: Hoare triple {5240#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:11,208 INFO L290 TraceCheckUtils]: 27: Hoare triple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:11,208 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} {5212#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (= main_~p~0 1))} #70#return; {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,209 INFO L272 TraceCheckUtils]: 29: Hoare triple {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:11,209 INFO L290 TraceCheckUtils]: 30: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:11,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:11,209 INFO L290 TraceCheckUtils]: 32: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:11,209 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5156#true} {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} #72#return; {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,210 INFO L290 TraceCheckUtils]: 34: Hoare triple {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:11,210 INFO L290 TraceCheckUtils]: 35: Hoare triple {5251#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:28:11,211 INFO L290 TraceCheckUtils]: 36: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:28:11,211 INFO L290 TraceCheckUtils]: 37: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 5);havoc #t~post6; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:28:11,211 INFO L272 TraceCheckUtils]: 38: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:11,211 INFO L290 TraceCheckUtils]: 39: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:11,211 INFO L290 TraceCheckUtils]: 40: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:11,211 INFO L290 TraceCheckUtils]: 41: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:11,212 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5156#true} {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} #68#return; {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:28:11,213 INFO L272 TraceCheckUtils]: 43: Hoare triple {5273#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:28:11,213 INFO L290 TraceCheckUtils]: 44: Hoare triple {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5302#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:11,213 INFO L290 TraceCheckUtils]: 45: Hoare triple {5302#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5157#false} is VALID [2022-04-15 08:28:11,213 INFO L290 TraceCheckUtils]: 46: Hoare triple {5157#false} assume !false; {5157#false} is VALID [2022-04-15 08:28:11,213 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 13 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 08:28:11,213 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:28:24,623 INFO L290 TraceCheckUtils]: 46: Hoare triple {5157#false} assume !false; {5157#false} is VALID [2022-04-15 08:28:24,624 INFO L290 TraceCheckUtils]: 45: Hoare triple {5302#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5157#false} is VALID [2022-04-15 08:28:24,624 INFO L290 TraceCheckUtils]: 44: Hoare triple {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5302#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:24,625 INFO L272 TraceCheckUtils]: 43: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5298#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:28:24,625 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5156#true} {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:24,625 INFO L290 TraceCheckUtils]: 41: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:24,626 INFO L290 TraceCheckUtils]: 40: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:24,626 INFO L290 TraceCheckUtils]: 39: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:24,626 INFO L272 TraceCheckUtils]: 38: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:24,626 INFO L290 TraceCheckUtils]: 37: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:24,626 INFO L290 TraceCheckUtils]: 36: Hoare triple {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:24,789 INFO L290 TraceCheckUtils]: 35: Hoare triple {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {5318#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:28:24,790 INFO L290 TraceCheckUtils]: 34: Hoare triple {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:28:24,791 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5156#true} {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:28:24,791 INFO L290 TraceCheckUtils]: 32: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:24,791 INFO L290 TraceCheckUtils]: 31: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:24,791 INFO L290 TraceCheckUtils]: 30: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:24,791 INFO L272 TraceCheckUtils]: 29: Hoare triple {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:24,792 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #70#return; {5343#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:28:24,792 INFO L290 TraceCheckUtils]: 27: Hoare triple {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:24,792 INFO L290 TraceCheckUtils]: 26: Hoare triple {5375#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {5244#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:24,793 INFO L290 TraceCheckUtils]: 25: Hoare triple {5156#true} ~cond := #in~cond; {5375#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:28:24,793 INFO L272 TraceCheckUtils]: 24: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:24,793 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5156#true} {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #68#return; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:28:24,793 INFO L290 TraceCheckUtils]: 22: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:24,793 INFO L290 TraceCheckUtils]: 21: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:24,793 INFO L290 TraceCheckUtils]: 20: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:24,794 INFO L272 TraceCheckUtils]: 19: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:24,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 5);havoc #t~post6; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:28:24,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 16: Hoare triple {5156#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5365#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:28:24,795 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5156#true} {5156#true} #66#return; {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 14: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 13: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 12: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L272 TraceCheckUtils]: 11: Hoare triple {5156#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5156#true} {5156#true} #64#return; {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 9: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 8: Hoare triple {5156#true} assume !(0 == ~cond); {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L290 TraceCheckUtils]: 7: Hoare triple {5156#true} ~cond := #in~cond; {5156#true} is VALID [2022-04-15 08:28:24,795 INFO L272 TraceCheckUtils]: 6: Hoare triple {5156#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L290 TraceCheckUtils]: 5: Hoare triple {5156#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L272 TraceCheckUtils]: 4: Hoare triple {5156#true} call #t~ret7 := main(); {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5156#true} {5156#true} #82#return; {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L290 TraceCheckUtils]: 2: Hoare triple {5156#true} assume true; {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L290 TraceCheckUtils]: 1: Hoare triple {5156#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L272 TraceCheckUtils]: 0: Hoare triple {5156#true} call ULTIMATE.init(); {5156#true} is VALID [2022-04-15 08:28:24,796 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 08:28:24,796 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:28:24,796 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [237708770] [2022-04-15 08:28:24,796 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:28:24,796 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [270876074] [2022-04-15 08:28:24,796 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [270876074] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:28:24,796 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:28:24,797 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 9] total 16 [2022-04-15 08:28:24,797 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:28:24,797 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [632090157] [2022-04-15 08:28:24,797 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [632090157] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:28:24,797 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:28:24,797 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 08:28:24,797 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1479262303] [2022-04-15 08:28:24,797 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:28:24,797 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) Word has length 47 [2022-04-15 08:28:24,798 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:28:24,798 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-15 08:28:24,829 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:28:24,829 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 08:28:24,829 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:28:24,829 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 08:28:24,830 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=197, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:28:24,830 INFO L87 Difference]: Start difference. First operand 104 states and 130 transitions. Second operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-15 08:28:26,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:28:26,133 INFO L93 Difference]: Finished difference Result 131 states and 169 transitions. [2022-04-15 08:28:26,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 08:28:26,133 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) Word has length 47 [2022-04-15 08:28:26,133 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:28:26,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-15 08:28:26,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 75 transitions. [2022-04-15 08:28:26,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-15 08:28:26,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 75 transitions. [2022-04-15 08:28:26,135 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 75 transitions. [2022-04-15 08:28:26,197 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:28:26,199 INFO L225 Difference]: With dead ends: 131 [2022-04-15 08:28:26,199 INFO L226 Difference]: Without dead ends: 129 [2022-04-15 08:28:26,200 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 78 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=282, Unknown=0, NotChecked=0, Total=342 [2022-04-15 08:28:26,200 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 34 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 350 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 367 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 350 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-15 08:28:26,201 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 170 Invalid, 367 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 350 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-15 08:28:26,201 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-15 08:28:26,295 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 124. [2022-04-15 08:28:26,296 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:28:26,296 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 08:28:26,296 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 08:28:26,296 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 08:28:26,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:28:26,300 INFO L93 Difference]: Finished difference Result 129 states and 167 transitions. [2022-04-15 08:28:26,301 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 167 transitions. [2022-04-15 08:28:26,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:28:26,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:28:26,301 INFO L74 IsIncluded]: Start isIncluded. First operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 129 states. [2022-04-15 08:28:26,301 INFO L87 Difference]: Start difference. First operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 129 states. [2022-04-15 08:28:26,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:28:26,305 INFO L93 Difference]: Finished difference Result 129 states and 167 transitions. [2022-04-15 08:28:26,305 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 167 transitions. [2022-04-15 08:28:26,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:28:26,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:28:26,305 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:28:26,305 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:28:26,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 72 states have (on average 1.2083333333333333) internal successors, (87), 79 states have internal predecessors, (87), 37 states have call successors, (37), 15 states have call predecessors, (37), 14 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 08:28:26,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 158 transitions. [2022-04-15 08:28:26,319 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 158 transitions. Word has length 47 [2022-04-15 08:28:26,319 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:28:26,319 INFO L478 AbstractCegarLoop]: Abstraction has 124 states and 158 transitions. [2022-04-15 08:28:26,319 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-15 08:28:26,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 124 states and 158 transitions. [2022-04-15 08:28:26,542 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:28:26,542 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 158 transitions. [2022-04-15 08:28:26,543 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-15 08:28:26,543 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:28:26,543 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:28:26,564 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-15 08:28:26,762 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-15 08:28:26,762 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:28:26,762 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:28:26,762 INFO L85 PathProgramCache]: Analyzing trace with hash -1475439812, now seen corresponding path program 1 times [2022-04-15 08:28:26,762 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:28:26,762 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [824743927] [2022-04-15 08:28:26,763 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:28:26,763 INFO L85 PathProgramCache]: Analyzing trace with hash -1475439812, now seen corresponding path program 2 times [2022-04-15 08:28:26,763 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:28:26,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [419450978] [2022-04-15 08:28:26,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:28:26,763 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:28:26,774 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:28:26,774 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1844990341] [2022-04-15 08:28:26,775 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:28:26,775 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:28:26,775 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:28:26,776 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-15 08:28:26,776 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-15 08:28:26,818 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:28:26,819 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:28:26,820 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-15 08:28:26,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:28:26,829 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:28:27,218 INFO L272 TraceCheckUtils]: 0: Hoare triple {6227#true} call ULTIMATE.init(); {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L290 TraceCheckUtils]: 1: Hoare triple {6227#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6227#true} {6227#true} #82#return; {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {6227#true} call #t~ret7 := main(); {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {6227#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L272 TraceCheckUtils]: 6: Hoare triple {6227#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,218 INFO L290 TraceCheckUtils]: 7: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6227#true} {6227#true} #64#return; {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L272 TraceCheckUtils]: 11: Hoare triple {6227#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L290 TraceCheckUtils]: 12: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L290 TraceCheckUtils]: 13: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L290 TraceCheckUtils]: 14: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6227#true} {6227#true} #66#return; {6227#true} is VALID [2022-04-15 08:28:27,219 INFO L290 TraceCheckUtils]: 16: Hoare triple {6227#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,220 INFO L290 TraceCheckUtils]: 17: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,220 INFO L290 TraceCheckUtils]: 18: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,220 INFO L272 TraceCheckUtils]: 19: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:28:27,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:28:27,220 INFO L290 TraceCheckUtils]: 22: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:28:27,221 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6227#true} {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,221 INFO L272 TraceCheckUtils]: 24: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,221 INFO L290 TraceCheckUtils]: 25: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:28:27,221 INFO L290 TraceCheckUtils]: 26: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:28:27,221 INFO L290 TraceCheckUtils]: 27: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:28:27,222 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6227#true} {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,222 INFO L272 TraceCheckUtils]: 29: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {6227#true} ~cond := #in~cond; {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:27,222 INFO L290 TraceCheckUtils]: 31: Hoare triple {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:27,223 INFO L290 TraceCheckUtils]: 32: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:27,223 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,224 INFO L290 TraceCheckUtils]: 34: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,224 INFO L290 TraceCheckUtils]: 35: Hoare triple {6280#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,225 INFO L290 TraceCheckUtils]: 36: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,225 INFO L290 TraceCheckUtils]: 37: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,225 INFO L272 TraceCheckUtils]: 38: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,225 INFO L290 TraceCheckUtils]: 39: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:28:27,225 INFO L290 TraceCheckUtils]: 40: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:28:27,225 INFO L290 TraceCheckUtils]: 41: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:28:27,226 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6227#true} {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #68#return; {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-15 08:28:27,226 INFO L272 TraceCheckUtils]: 43: Hoare triple {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:28:27,226 INFO L290 TraceCheckUtils]: 44: Hoare triple {6227#true} ~cond := #in~cond; {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:27,227 INFO L290 TraceCheckUtils]: 45: Hoare triple {6323#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:27,227 INFO L290 TraceCheckUtils]: 46: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:28:27,228 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6340#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #70#return; {6377#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0))} is VALID [2022-04-15 08:28:27,228 INFO L272 TraceCheckUtils]: 48: Hoare triple {6377#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:28:27,229 INFO L290 TraceCheckUtils]: 49: Hoare triple {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6385#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:28:27,229 INFO L290 TraceCheckUtils]: 50: Hoare triple {6385#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6228#false} is VALID [2022-04-15 08:28:27,229 INFO L290 TraceCheckUtils]: 51: Hoare triple {6228#false} assume !false; {6228#false} is VALID [2022-04-15 08:28:27,229 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 23 proven. 10 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 08:28:27,229 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:29:16,469 INFO L290 TraceCheckUtils]: 51: Hoare triple {6228#false} assume !false; {6228#false} is VALID [2022-04-15 08:29:16,470 INFO L290 TraceCheckUtils]: 50: Hoare triple {6385#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6228#false} is VALID [2022-04-15 08:29:16,470 INFO L290 TraceCheckUtils]: 49: Hoare triple {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6385#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:16,471 INFO L272 TraceCheckUtils]: 48: Hoare triple {6401#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6381#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:29:16,472 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #70#return; {6401#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:29:16,473 INFO L290 TraceCheckUtils]: 46: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:16,473 INFO L290 TraceCheckUtils]: 45: Hoare triple {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:16,473 INFO L290 TraceCheckUtils]: 44: Hoare triple {6227#true} ~cond := #in~cond; {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:29:16,473 INFO L272 TraceCheckUtils]: 43: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,474 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6227#true} {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #68#return; {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:16,474 INFO L290 TraceCheckUtils]: 41: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:29:16,474 INFO L290 TraceCheckUtils]: 40: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:29:16,474 INFO L290 TraceCheckUtils]: 39: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:29:16,474 INFO L272 TraceCheckUtils]: 38: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,474 INFO L290 TraceCheckUtils]: 37: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 5);havoc #t~post6; {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:16,475 INFO L290 TraceCheckUtils]: 36: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:16,681 INFO L290 TraceCheckUtils]: 35: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:16,682 INFO L290 TraceCheckUtils]: 34: Hoare triple {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~a~0 != ~b~0); {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:16,683 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} {6227#true} #72#return; {6405#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:16,683 INFO L290 TraceCheckUtils]: 32: Hoare triple {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:16,683 INFO L290 TraceCheckUtils]: 31: Hoare triple {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6327#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 30: Hoare triple {6227#true} ~cond := #in~cond; {6415#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:29:16,684 INFO L272 TraceCheckUtils]: 29: Hoare triple {6227#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6227#true} {6227#true} #70#return; {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 27: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 26: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 25: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L272 TraceCheckUtils]: 24: Hoare triple {6227#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6227#true} {6227#true} #68#return; {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 22: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 21: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 20: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L272 TraceCheckUtils]: 19: Hoare triple {6227#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,684 INFO L290 TraceCheckUtils]: 18: Hoare triple {6227#true} assume !!(#t~post6 < 5);havoc #t~post6; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 17: Hoare triple {6227#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 16: Hoare triple {6227#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6227#true} {6227#true} #66#return; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 14: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 12: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L272 TraceCheckUtils]: 11: Hoare triple {6227#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6227#true} {6227#true} #64#return; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 8: Hoare triple {6227#true} assume !(0 == ~cond); {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 7: Hoare triple {6227#true} ~cond := #in~cond; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L272 TraceCheckUtils]: 6: Hoare triple {6227#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 5: Hoare triple {6227#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L272 TraceCheckUtils]: 4: Hoare triple {6227#true} call #t~ret7 := main(); {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6227#true} {6227#true} #82#return; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {6227#true} assume true; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L290 TraceCheckUtils]: 1: Hoare triple {6227#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6227#true} is VALID [2022-04-15 08:29:16,685 INFO L272 TraceCheckUtils]: 0: Hoare triple {6227#true} call ULTIMATE.init(); {6227#true} is VALID [2022-04-15 08:29:16,686 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 28 proven. 5 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 08:29:16,686 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:29:16,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [419450978] [2022-04-15 08:29:16,686 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:29:16,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1844990341] [2022-04-15 08:29:16,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1844990341] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:29:16,686 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:29:16,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-15 08:29:16,686 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:29:16,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [824743927] [2022-04-15 08:29:16,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [824743927] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:29:16,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:29:16,687 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:29:16,687 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1332160598] [2022-04-15 08:29:16,687 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:29:16,687 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 52 [2022-04-15 08:29:16,687 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:29:16,687 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-15 08:29:16,720 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-15 08:29:16,720 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:29:16,721 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:16,721 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:29:16,721 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=99, Unknown=0, NotChecked=0, Total=132 [2022-04-15 08:29:16,721 INFO L87 Difference]: Start difference. First operand 124 states and 158 transitions. Second operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-15 08:29:17,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:17,534 INFO L93 Difference]: Finished difference Result 160 states and 210 transitions. [2022-04-15 08:29:17,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:29:17,534 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 52 [2022-04-15 08:29:17,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:29:17,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-15 08:29:17,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 94 transitions. [2022-04-15 08:29:17,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-15 08:29:17,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 94 transitions. [2022-04-15 08:29:17,537 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 94 transitions. [2022-04-15 08:29:17,631 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-15 08:29:17,634 INFO L225 Difference]: With dead ends: 160 [2022-04-15 08:29:17,634 INFO L226 Difference]: Without dead ends: 153 [2022-04-15 08:29:17,635 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 91 SyntacticMatches, 2 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=136, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:29:17,635 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 24 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 231 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 256 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 231 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 08:29:17,635 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 132 Invalid, 256 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 231 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 08:29:17,635 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2022-04-15 08:29:17,726 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 153. [2022-04-15 08:29:17,726 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:29:17,727 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:17,727 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:17,727 INFO L87 Difference]: Start difference. First operand 153 states. Second operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:17,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:17,730 INFO L93 Difference]: Finished difference Result 153 states and 198 transitions. [2022-04-15 08:29:17,730 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 198 transitions. [2022-04-15 08:29:17,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:17,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:17,731 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 153 states. [2022-04-15 08:29:17,731 INFO L87 Difference]: Start difference. First operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 153 states. [2022-04-15 08:29:17,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:17,734 INFO L93 Difference]: Finished difference Result 153 states and 198 transitions. [2022-04-15 08:29:17,734 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 198 transitions. [2022-04-15 08:29:17,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:17,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:17,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:29:17,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:29:17,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 87 states have (on average 1.2183908045977012) internal successors, (106), 96 states have internal predecessors, (106), 48 states have call successors, (48), 18 states have call predecessors, (48), 17 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:17,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 198 transitions. [2022-04-15 08:29:17,747 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 198 transitions. Word has length 52 [2022-04-15 08:29:17,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:29:17,748 INFO L478 AbstractCegarLoop]: Abstraction has 153 states and 198 transitions. [2022-04-15 08:29:17,748 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-15 08:29:17,748 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 153 states and 198 transitions. [2022-04-15 08:29:17,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 198 edges. 198 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:29:17,965 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 198 transitions. [2022-04-15 08:29:17,965 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-15 08:29:17,965 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:29:17,965 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:29:17,982 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-15 08:29:18,166 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:29:18,166 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:29:18,167 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:29:18,167 INFO L85 PathProgramCache]: Analyzing trace with hash 220857665, now seen corresponding path program 3 times [2022-04-15 08:29:18,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:18,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [618769712] [2022-04-15 08:29:18,167 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:29:18,167 INFO L85 PathProgramCache]: Analyzing trace with hash 220857665, now seen corresponding path program 4 times [2022-04-15 08:29:18,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:29:18,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [310205623] [2022-04-15 08:29:18,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:29:18,168 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:29:18,176 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:29:18,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1146183909] [2022-04-15 08:29:18,177 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:29:18,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:29:18,177 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:29:18,187 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-15 08:29:18,198 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-15 08:29:18,270 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:29:18,271 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:29:18,273 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 08:29:18,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:29:18,286 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:29:18,557 INFO L272 TraceCheckUtils]: 0: Hoare triple {7486#true} call ULTIMATE.init(); {7486#true} is VALID [2022-04-15 08:29:18,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {7486#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {7494#(<= ~counter~0 0)} assume true; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,558 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7494#(<= ~counter~0 0)} {7486#true} #82#return; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,558 INFO L272 TraceCheckUtils]: 4: Hoare triple {7494#(<= ~counter~0 0)} call #t~ret7 := main(); {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,558 INFO L290 TraceCheckUtils]: 5: Hoare triple {7494#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,559 INFO L272 TraceCheckUtils]: 6: Hoare triple {7494#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,559 INFO L290 TraceCheckUtils]: 7: Hoare triple {7494#(<= ~counter~0 0)} ~cond := #in~cond; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,559 INFO L290 TraceCheckUtils]: 8: Hoare triple {7494#(<= ~counter~0 0)} assume !(0 == ~cond); {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,559 INFO L290 TraceCheckUtils]: 9: Hoare triple {7494#(<= ~counter~0 0)} assume true; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,560 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7494#(<= ~counter~0 0)} {7494#(<= ~counter~0 0)} #64#return; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,571 INFO L272 TraceCheckUtils]: 11: Hoare triple {7494#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,572 INFO L290 TraceCheckUtils]: 12: Hoare triple {7494#(<= ~counter~0 0)} ~cond := #in~cond; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {7494#(<= ~counter~0 0)} assume !(0 == ~cond); {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,572 INFO L290 TraceCheckUtils]: 14: Hoare triple {7494#(<= ~counter~0 0)} assume true; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,573 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7494#(<= ~counter~0 0)} {7494#(<= ~counter~0 0)} #66#return; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,573 INFO L290 TraceCheckUtils]: 16: Hoare triple {7494#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7494#(<= ~counter~0 0)} is VALID [2022-04-15 08:29:18,574 INFO L290 TraceCheckUtils]: 17: Hoare triple {7494#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,574 INFO L290 TraceCheckUtils]: 18: Hoare triple {7543#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,574 INFO L272 TraceCheckUtils]: 19: Hoare triple {7543#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {7543#(<= ~counter~0 1)} ~cond := #in~cond; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,575 INFO L290 TraceCheckUtils]: 21: Hoare triple {7543#(<= ~counter~0 1)} assume !(0 == ~cond); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,575 INFO L290 TraceCheckUtils]: 22: Hoare triple {7543#(<= ~counter~0 1)} assume true; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,576 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7543#(<= ~counter~0 1)} {7543#(<= ~counter~0 1)} #68#return; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,576 INFO L272 TraceCheckUtils]: 24: Hoare triple {7543#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,576 INFO L290 TraceCheckUtils]: 25: Hoare triple {7543#(<= ~counter~0 1)} ~cond := #in~cond; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,577 INFO L290 TraceCheckUtils]: 26: Hoare triple {7543#(<= ~counter~0 1)} assume !(0 == ~cond); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,577 INFO L290 TraceCheckUtils]: 27: Hoare triple {7543#(<= ~counter~0 1)} assume true; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,577 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7543#(<= ~counter~0 1)} {7543#(<= ~counter~0 1)} #70#return; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,578 INFO L272 TraceCheckUtils]: 29: Hoare triple {7543#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,578 INFO L290 TraceCheckUtils]: 30: Hoare triple {7543#(<= ~counter~0 1)} ~cond := #in~cond; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,578 INFO L290 TraceCheckUtils]: 31: Hoare triple {7543#(<= ~counter~0 1)} assume !(0 == ~cond); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,579 INFO L290 TraceCheckUtils]: 32: Hoare triple {7543#(<= ~counter~0 1)} assume true; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,579 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7543#(<= ~counter~0 1)} {7543#(<= ~counter~0 1)} #72#return; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,579 INFO L290 TraceCheckUtils]: 34: Hoare triple {7543#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,580 INFO L290 TraceCheckUtils]: 35: Hoare triple {7543#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7543#(<= ~counter~0 1)} is VALID [2022-04-15 08:29:18,580 INFO L290 TraceCheckUtils]: 36: Hoare triple {7543#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,581 INFO L290 TraceCheckUtils]: 37: Hoare triple {7601#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,581 INFO L272 TraceCheckUtils]: 38: Hoare triple {7601#(<= ~counter~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,581 INFO L290 TraceCheckUtils]: 39: Hoare triple {7601#(<= ~counter~0 2)} ~cond := #in~cond; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,582 INFO L290 TraceCheckUtils]: 40: Hoare triple {7601#(<= ~counter~0 2)} assume !(0 == ~cond); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,582 INFO L290 TraceCheckUtils]: 41: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,583 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {7601#(<= ~counter~0 2)} {7601#(<= ~counter~0 2)} #68#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,583 INFO L272 TraceCheckUtils]: 43: Hoare triple {7601#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,584 INFO L290 TraceCheckUtils]: 44: Hoare triple {7601#(<= ~counter~0 2)} ~cond := #in~cond; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,584 INFO L290 TraceCheckUtils]: 45: Hoare triple {7601#(<= ~counter~0 2)} assume !(0 == ~cond); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,584 INFO L290 TraceCheckUtils]: 46: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,585 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7601#(<= ~counter~0 2)} {7601#(<= ~counter~0 2)} #70#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,585 INFO L272 TraceCheckUtils]: 48: Hoare triple {7601#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,585 INFO L290 TraceCheckUtils]: 49: Hoare triple {7601#(<= ~counter~0 2)} ~cond := #in~cond; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,586 INFO L290 TraceCheckUtils]: 50: Hoare triple {7601#(<= ~counter~0 2)} assume !(0 == ~cond); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,586 INFO L290 TraceCheckUtils]: 51: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,586 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {7601#(<= ~counter~0 2)} {7601#(<= ~counter~0 2)} #72#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,587 INFO L290 TraceCheckUtils]: 53: Hoare triple {7601#(<= ~counter~0 2)} assume !!(~a~0 != ~b~0); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,587 INFO L290 TraceCheckUtils]: 54: Hoare triple {7601#(<= ~counter~0 2)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,587 INFO L290 TraceCheckUtils]: 55: Hoare triple {7601#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7659#(<= |main_#t~post6| 2)} is VALID [2022-04-15 08:29:18,588 INFO L290 TraceCheckUtils]: 56: Hoare triple {7659#(<= |main_#t~post6| 2)} assume !(#t~post6 < 5);havoc #t~post6; {7487#false} is VALID [2022-04-15 08:29:18,588 INFO L272 TraceCheckUtils]: 57: Hoare triple {7487#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {7487#false} is VALID [2022-04-15 08:29:18,588 INFO L290 TraceCheckUtils]: 58: Hoare triple {7487#false} ~cond := #in~cond; {7487#false} is VALID [2022-04-15 08:29:18,588 INFO L290 TraceCheckUtils]: 59: Hoare triple {7487#false} assume 0 == ~cond; {7487#false} is VALID [2022-04-15 08:29:18,588 INFO L290 TraceCheckUtils]: 60: Hoare triple {7487#false} assume !false; {7487#false} is VALID [2022-04-15 08:29:18,588 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 47 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:29:18,588 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:29:18,836 INFO L290 TraceCheckUtils]: 60: Hoare triple {7487#false} assume !false; {7487#false} is VALID [2022-04-15 08:29:18,836 INFO L290 TraceCheckUtils]: 59: Hoare triple {7487#false} assume 0 == ~cond; {7487#false} is VALID [2022-04-15 08:29:18,836 INFO L290 TraceCheckUtils]: 58: Hoare triple {7487#false} ~cond := #in~cond; {7487#false} is VALID [2022-04-15 08:29:18,836 INFO L272 TraceCheckUtils]: 57: Hoare triple {7487#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {7487#false} is VALID [2022-04-15 08:29:18,837 INFO L290 TraceCheckUtils]: 56: Hoare triple {7687#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {7487#false} is VALID [2022-04-15 08:29:18,837 INFO L290 TraceCheckUtils]: 55: Hoare triple {7691#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7687#(< |main_#t~post6| 5)} is VALID [2022-04-15 08:29:18,837 INFO L290 TraceCheckUtils]: 54: Hoare triple {7691#(< ~counter~0 5)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,837 INFO L290 TraceCheckUtils]: 53: Hoare triple {7691#(< ~counter~0 5)} assume !!(~a~0 != ~b~0); {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,838 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {7486#true} {7691#(< ~counter~0 5)} #72#return; {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,838 INFO L290 TraceCheckUtils]: 51: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,838 INFO L290 TraceCheckUtils]: 50: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,838 INFO L290 TraceCheckUtils]: 49: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,838 INFO L272 TraceCheckUtils]: 48: Hoare triple {7691#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,839 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7486#true} {7691#(< ~counter~0 5)} #70#return; {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,839 INFO L290 TraceCheckUtils]: 46: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,839 INFO L290 TraceCheckUtils]: 45: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,839 INFO L290 TraceCheckUtils]: 44: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,839 INFO L272 TraceCheckUtils]: 43: Hoare triple {7691#(< ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,840 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {7486#true} {7691#(< ~counter~0 5)} #68#return; {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,840 INFO L290 TraceCheckUtils]: 41: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,840 INFO L290 TraceCheckUtils]: 40: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,840 INFO L290 TraceCheckUtils]: 39: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,840 INFO L272 TraceCheckUtils]: 38: Hoare triple {7691#(< ~counter~0 5)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,840 INFO L290 TraceCheckUtils]: 37: Hoare triple {7691#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,841 INFO L290 TraceCheckUtils]: 36: Hoare triple {7749#(< ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7691#(< ~counter~0 5)} is VALID [2022-04-15 08:29:18,841 INFO L290 TraceCheckUtils]: 35: Hoare triple {7749#(< ~counter~0 4)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,841 INFO L290 TraceCheckUtils]: 34: Hoare triple {7749#(< ~counter~0 4)} assume !!(~a~0 != ~b~0); {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,842 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7486#true} {7749#(< ~counter~0 4)} #72#return; {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,842 INFO L290 TraceCheckUtils]: 32: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,842 INFO L290 TraceCheckUtils]: 31: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,842 INFO L272 TraceCheckUtils]: 29: Hoare triple {7749#(< ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,843 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7486#true} {7749#(< ~counter~0 4)} #70#return; {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,843 INFO L290 TraceCheckUtils]: 27: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,843 INFO L290 TraceCheckUtils]: 26: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,843 INFO L290 TraceCheckUtils]: 25: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,843 INFO L272 TraceCheckUtils]: 24: Hoare triple {7749#(< ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,843 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7486#true} {7749#(< ~counter~0 4)} #68#return; {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,843 INFO L290 TraceCheckUtils]: 22: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,844 INFO L290 TraceCheckUtils]: 21: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,844 INFO L290 TraceCheckUtils]: 20: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,844 INFO L272 TraceCheckUtils]: 19: Hoare triple {7749#(< ~counter~0 4)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {7749#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,844 INFO L290 TraceCheckUtils]: 17: Hoare triple {7601#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7749#(< ~counter~0 4)} is VALID [2022-04-15 08:29:18,845 INFO L290 TraceCheckUtils]: 16: Hoare triple {7601#(<= ~counter~0 2)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,845 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7486#true} {7601#(<= ~counter~0 2)} #66#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,845 INFO L290 TraceCheckUtils]: 14: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,845 INFO L290 TraceCheckUtils]: 13: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,845 INFO L290 TraceCheckUtils]: 12: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,845 INFO L272 TraceCheckUtils]: 11: Hoare triple {7601#(<= ~counter~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,846 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7486#true} {7601#(<= ~counter~0 2)} #64#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {7486#true} assume true; {7486#true} is VALID [2022-04-15 08:29:18,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {7486#true} assume !(0 == ~cond); {7486#true} is VALID [2022-04-15 08:29:18,846 INFO L290 TraceCheckUtils]: 7: Hoare triple {7486#true} ~cond := #in~cond; {7486#true} is VALID [2022-04-15 08:29:18,846 INFO L272 TraceCheckUtils]: 6: Hoare triple {7601#(<= ~counter~0 2)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7486#true} is VALID [2022-04-15 08:29:18,846 INFO L290 TraceCheckUtils]: 5: Hoare triple {7601#(<= ~counter~0 2)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,847 INFO L272 TraceCheckUtils]: 4: Hoare triple {7601#(<= ~counter~0 2)} call #t~ret7 := main(); {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7601#(<= ~counter~0 2)} {7486#true} #82#return; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,847 INFO L290 TraceCheckUtils]: 2: Hoare triple {7601#(<= ~counter~0 2)} assume true; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,848 INFO L290 TraceCheckUtils]: 1: Hoare triple {7486#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7601#(<= ~counter~0 2)} is VALID [2022-04-15 08:29:18,848 INFO L272 TraceCheckUtils]: 0: Hoare triple {7486#true} call ULTIMATE.init(); {7486#true} is VALID [2022-04-15 08:29:18,848 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 11 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-15 08:29:18,848 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:29:18,848 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [310205623] [2022-04-15 08:29:18,848 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:29:18,848 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1146183909] [2022-04-15 08:29:18,848 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1146183909] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:29:18,848 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:29:18,848 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-15 08:29:18,849 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:29:18,849 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [618769712] [2022-04-15 08:29:18,849 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [618769712] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:29:18,849 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:29:18,849 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 08:29:18,849 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1853589994] [2022-04-15 08:29:18,849 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:29:18,849 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-15 08:29:18,849 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:29:18,850 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 08:29:18,886 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-15 08:29:18,886 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 08:29:18,886 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:18,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 08:29:18,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:29:18,887 INFO L87 Difference]: Start difference. First operand 153 states and 198 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 08:29:19,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:19,144 INFO L93 Difference]: Finished difference Result 199 states and 251 transitions. [2022-04-15 08:29:19,144 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 08:29:19,144 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-15 08:29:19,144 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:29:19,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 08:29:19,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-04-15 08:29:19,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 08:29:19,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-04-15 08:29:19,146 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 82 transitions. [2022-04-15 08:29:19,187 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-15 08:29:19,190 INFO L225 Difference]: With dead ends: 199 [2022-04-15 08:29:19,190 INFO L226 Difference]: Without dead ends: 173 [2022-04-15 08:29:19,191 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-15 08:29:19,191 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 8 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:29:19,191 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 136 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:29:19,192 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2022-04-15 08:29:19,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 173. [2022-04-15 08:29:19,324 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:29:19,324 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:19,324 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:19,325 INFO L87 Difference]: Start difference. First operand 173 states. Second operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:19,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:19,328 INFO L93 Difference]: Finished difference Result 173 states and 215 transitions. [2022-04-15 08:29:19,328 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 215 transitions. [2022-04-15 08:29:19,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:19,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:19,328 INFO L74 IsIncluded]: Start isIncluded. First operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-15 08:29:19,329 INFO L87 Difference]: Start difference. First operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-15 08:29:19,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:19,332 INFO L93 Difference]: Finished difference Result 173 states and 215 transitions. [2022-04-15 08:29:19,332 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 215 transitions. [2022-04-15 08:29:19,332 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:19,332 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:19,332 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:29:19,332 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:29:19,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 173 states, 104 states have (on average 1.1826923076923077) internal successors, (123), 113 states have internal predecessors, (123), 48 states have call successors, (48), 21 states have call predecessors, (48), 20 states have return successors, (44), 38 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-15 08:29:19,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 215 transitions. [2022-04-15 08:29:19,340 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 215 transitions. Word has length 61 [2022-04-15 08:29:19,340 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:29:19,340 INFO L478 AbstractCegarLoop]: Abstraction has 173 states and 215 transitions. [2022-04-15 08:29:19,340 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 08:29:19,340 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 173 states and 215 transitions. [2022-04-15 08:29:19,571 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:29:19,571 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 215 transitions. [2022-04-15 08:29:19,571 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-15 08:29:19,571 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:29:19,572 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:29:19,590 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-15 08:29:19,772 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-15 08:29:19,772 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:29:19,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:29:19,772 INFO L85 PathProgramCache]: Analyzing trace with hash 1997533323, now seen corresponding path program 1 times [2022-04-15 08:29:19,773 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:19,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [973392131] [2022-04-15 08:29:19,773 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:29:19,773 INFO L85 PathProgramCache]: Analyzing trace with hash 1997533323, now seen corresponding path program 2 times [2022-04-15 08:29:19,773 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:29:19,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2002766851] [2022-04-15 08:29:19,773 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:29:19,773 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:29:19,783 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:29:19,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1976492661] [2022-04-15 08:29:19,783 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:29:19,783 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:29:19,783 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:29:19,807 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-15 08:29:19,808 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-15 08:29:19,848 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:29:19,848 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:29:19,849 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 08:29:19,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:29:19,858 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:29:20,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {8954#true} call ULTIMATE.init(); {8954#true} is VALID [2022-04-15 08:29:20,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {8954#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8954#true} is VALID [2022-04-15 08:29:20,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8954#true} {8954#true} #82#return; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L272 TraceCheckUtils]: 4: Hoare triple {8954#true} call #t~ret7 := main(); {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 5: Hoare triple {8954#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L272 TraceCheckUtils]: 6: Hoare triple {8954#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 7: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8954#true} {8954#true} #64#return; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L272 TraceCheckUtils]: 11: Hoare triple {8954#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 13: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,217 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8954#true} {8954#true} #66#return; {8954#true} is VALID [2022-04-15 08:29:20,218 INFO L290 TraceCheckUtils]: 16: Hoare triple {8954#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,218 INFO L290 TraceCheckUtils]: 17: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,218 INFO L290 TraceCheckUtils]: 18: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,219 INFO L272 TraceCheckUtils]: 19: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L290 TraceCheckUtils]: 20: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L290 TraceCheckUtils]: 21: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L290 TraceCheckUtils]: 22: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8954#true} {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #68#return; {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,219 INFO L272 TraceCheckUtils]: 24: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L290 TraceCheckUtils]: 25: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L290 TraceCheckUtils]: 26: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,219 INFO L290 TraceCheckUtils]: 27: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,220 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8954#true} {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #70#return; {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,220 INFO L272 TraceCheckUtils]: 29: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,220 INFO L290 TraceCheckUtils]: 30: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,220 INFO L290 TraceCheckUtils]: 31: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,220 INFO L290 TraceCheckUtils]: 32: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,221 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8954#true} {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #72#return; {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,221 INFO L290 TraceCheckUtils]: 34: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:20,222 INFO L290 TraceCheckUtils]: 35: Hoare triple {9007#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,222 INFO L290 TraceCheckUtils]: 36: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,222 INFO L290 TraceCheckUtils]: 37: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,222 INFO L272 TraceCheckUtils]: 38: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,222 INFO L290 TraceCheckUtils]: 39: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,223 INFO L290 TraceCheckUtils]: 40: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,223 INFO L290 TraceCheckUtils]: 41: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,223 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8954#true} {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #68#return; {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,223 INFO L272 TraceCheckUtils]: 43: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,223 INFO L290 TraceCheckUtils]: 44: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,223 INFO L290 TraceCheckUtils]: 45: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,223 INFO L290 TraceCheckUtils]: 46: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,224 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8954#true} {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #70#return; {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,224 INFO L272 TraceCheckUtils]: 48: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,224 INFO L290 TraceCheckUtils]: 49: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,224 INFO L290 TraceCheckUtils]: 50: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,224 INFO L290 TraceCheckUtils]: 51: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,225 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8954#true} {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} #72#return; {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,225 INFO L290 TraceCheckUtils]: 53: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-15 08:29:20,226 INFO L290 TraceCheckUtils]: 54: Hoare triple {9065#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {9123#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:29:20,226 INFO L290 TraceCheckUtils]: 55: Hoare triple {9123#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9123#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:29:20,226 INFO L290 TraceCheckUtils]: 56: Hoare triple {9123#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 5);havoc #t~post6; {9123#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:29:20,227 INFO L272 TraceCheckUtils]: 57: Hoare triple {9123#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:29:20,227 INFO L290 TraceCheckUtils]: 58: Hoare triple {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:20,228 INFO L290 TraceCheckUtils]: 59: Hoare triple {9137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8955#false} is VALID [2022-04-15 08:29:20,228 INFO L290 TraceCheckUtils]: 60: Hoare triple {8955#false} assume !false; {8955#false} is VALID [2022-04-15 08:29:20,228 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 13 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-15 08:29:20,228 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:29:20,438 INFO L290 TraceCheckUtils]: 60: Hoare triple {8955#false} assume !false; {8955#false} is VALID [2022-04-15 08:29:20,439 INFO L290 TraceCheckUtils]: 59: Hoare triple {9137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8955#false} is VALID [2022-04-15 08:29:20,439 INFO L290 TraceCheckUtils]: 58: Hoare triple {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:20,440 INFO L272 TraceCheckUtils]: 57: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:29:20,440 INFO L290 TraceCheckUtils]: 56: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 5);havoc #t~post6; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,440 INFO L290 TraceCheckUtils]: 55: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,443 INFO L290 TraceCheckUtils]: 54: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,443 INFO L290 TraceCheckUtils]: 53: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,444 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8954#true} {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #72#return; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,444 INFO L290 TraceCheckUtils]: 51: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,444 INFO L290 TraceCheckUtils]: 50: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,444 INFO L290 TraceCheckUtils]: 49: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,444 INFO L272 TraceCheckUtils]: 48: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,445 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8954#true} {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #70#return; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,445 INFO L290 TraceCheckUtils]: 46: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L290 TraceCheckUtils]: 45: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L290 TraceCheckUtils]: 44: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L272 TraceCheckUtils]: 43: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8954#true} {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #68#return; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,446 INFO L290 TraceCheckUtils]: 41: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L290 TraceCheckUtils]: 40: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L290 TraceCheckUtils]: 39: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,446 INFO L272 TraceCheckUtils]: 38: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,447 INFO L290 TraceCheckUtils]: 37: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 5);havoc #t~post6; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,447 INFO L290 TraceCheckUtils]: 36: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,449 INFO L290 TraceCheckUtils]: 35: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,450 INFO L290 TraceCheckUtils]: 34: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,450 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8954#true} {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #72#return; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,450 INFO L290 TraceCheckUtils]: 32: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,450 INFO L290 TraceCheckUtils]: 31: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,451 INFO L290 TraceCheckUtils]: 30: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,451 INFO L272 TraceCheckUtils]: 29: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,451 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8954#true} {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #70#return; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,451 INFO L290 TraceCheckUtils]: 27: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,451 INFO L290 TraceCheckUtils]: 26: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,451 INFO L290 TraceCheckUtils]: 25: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,451 INFO L272 TraceCheckUtils]: 24: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,452 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8954#true} {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #68#return; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,452 INFO L290 TraceCheckUtils]: 22: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,452 INFO L290 TraceCheckUtils]: 21: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,452 INFO L290 TraceCheckUtils]: 20: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,452 INFO L272 TraceCheckUtils]: 19: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,452 INFO L290 TraceCheckUtils]: 18: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 5);havoc #t~post6; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 17: Hoare triple {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 16: Hoare triple {8954#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9153#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-15 08:29:20,453 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8954#true} {8954#true} #66#return; {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 14: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 13: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 12: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L272 TraceCheckUtils]: 11: Hoare triple {8954#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8954#true} {8954#true} #64#return; {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {8954#true} assume !(0 == ~cond); {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L290 TraceCheckUtils]: 7: Hoare triple {8954#true} ~cond := #in~cond; {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L272 TraceCheckUtils]: 6: Hoare triple {8954#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {8954#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {8954#true} call #t~ret7 := main(); {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8954#true} {8954#true} #82#return; {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {8954#true} assume true; {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {8954#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L272 TraceCheckUtils]: 0: Hoare triple {8954#true} call ULTIMATE.init(); {8954#true} is VALID [2022-04-15 08:29:20,454 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 77 trivial. 0 not checked. [2022-04-15 08:29:20,454 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:29:20,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2002766851] [2022-04-15 08:29:20,454 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:29:20,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1976492661] [2022-04-15 08:29:20,454 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1976492661] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 08:29:20,454 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 08:29:20,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [7] total 8 [2022-04-15 08:29:20,455 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:29:20,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [973392131] [2022-04-15 08:29:20,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [973392131] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:29:20,455 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:29:20,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:29:20,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1315595025] [2022-04-15 08:29:20,455 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:29:20,455 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 61 [2022-04-15 08:29:20,455 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:29:20,456 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:29:20,480 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-15 08:29:20,480 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:29:20,480 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:20,480 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:29:20,481 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-15 08:29:20,481 INFO L87 Difference]: Start difference. First operand 173 states and 215 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:29:20,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:20,734 INFO L93 Difference]: Finished difference Result 179 states and 220 transitions. [2022-04-15 08:29:20,734 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:29:20,734 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 61 [2022-04-15 08:29:20,734 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:29:20,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:29:20,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-15 08:29:20,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:29:20,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-15 08:29:20,736 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-15 08:29:20,770 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:29:20,772 INFO L225 Difference]: With dead ends: 179 [2022-04-15 08:29:20,773 INFO L226 Difference]: Without dead ends: 174 [2022-04-15 08:29:20,773 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 112 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:29:20,773 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 7 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:29:20,773 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 102 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:29:20,774 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-15 08:29:20,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 172. [2022-04-15 08:29:20,891 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:29:20,891 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-15 08:29:20,891 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-15 08:29:20,892 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-15 08:29:20,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:20,895 INFO L93 Difference]: Finished difference Result 174 states and 211 transitions. [2022-04-15 08:29:20,895 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 211 transitions. [2022-04-15 08:29:20,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:20,895 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:20,896 INFO L74 IsIncluded]: Start isIncluded. First operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) Second operand 174 states. [2022-04-15 08:29:20,896 INFO L87 Difference]: Start difference. First operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) Second operand 174 states. [2022-04-15 08:29:20,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:20,899 INFO L93 Difference]: Finished difference Result 174 states and 211 transitions. [2022-04-15 08:29:20,899 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 211 transitions. [2022-04-15 08:29:20,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:20,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:20,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:29:20,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:29:20,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 172 states, 107 states have (on average 1.1682242990654206) internal successors, (125), 114 states have internal predecessors, (125), 43 states have call successors, (43), 22 states have call predecessors, (43), 21 states have return successors, (40), 35 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-15 08:29:20,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 172 states to 172 states and 208 transitions. [2022-04-15 08:29:20,903 INFO L78 Accepts]: Start accepts. Automaton has 172 states and 208 transitions. Word has length 61 [2022-04-15 08:29:20,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:29:20,903 INFO L478 AbstractCegarLoop]: Abstraction has 172 states and 208 transitions. [2022-04-15 08:29:20,903 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 08:29:20,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 172 states and 208 transitions. [2022-04-15 08:29:21,138 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:29:21,139 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 208 transitions. [2022-04-15 08:29:21,139 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-15 08:29:21,139 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:29:21,139 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:29:21,157 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-15 08:29:21,340 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-15 08:29:21,340 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:29:21,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:29:21,340 INFO L85 PathProgramCache]: Analyzing trace with hash 404368620, now seen corresponding path program 5 times [2022-04-15 08:29:21,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:21,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [825416293] [2022-04-15 08:29:21,341 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:29:21,341 INFO L85 PathProgramCache]: Analyzing trace with hash 404368620, now seen corresponding path program 6 times [2022-04-15 08:29:21,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:29:21,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [144427466] [2022-04-15 08:29:21,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:29:21,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:29:21,350 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:29:21,351 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1386334328] [2022-04-15 08:29:21,351 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:29:21,351 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:29:21,351 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:29:21,356 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-15 08:29:21,357 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-15 08:29:21,414 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 08:29:21,414 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:29:21,415 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-15 08:29:21,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:29:21,434 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:29:21,890 INFO L272 TraceCheckUtils]: 0: Hoare triple {10379#true} call ULTIMATE.init(); {10379#true} is VALID [2022-04-15 08:29:21,890 INFO L290 TraceCheckUtils]: 1: Hoare triple {10379#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10379#true} is VALID [2022-04-15 08:29:21,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,890 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10379#true} {10379#true} #82#return; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {10379#true} call #t~ret7 := main(); {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 5: Hoare triple {10379#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L272 TraceCheckUtils]: 6: Hoare triple {10379#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 7: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 8: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 9: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10379#true} {10379#true} #64#return; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L272 TraceCheckUtils]: 11: Hoare triple {10379#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 12: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 13: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 14: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10379#true} {10379#true} #66#return; {10379#true} is VALID [2022-04-15 08:29:21,891 INFO L290 TraceCheckUtils]: 16: Hoare triple {10379#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,892 INFO L290 TraceCheckUtils]: 17: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,892 INFO L272 TraceCheckUtils]: 19: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,892 INFO L290 TraceCheckUtils]: 20: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,892 INFO L290 TraceCheckUtils]: 21: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,892 INFO L290 TraceCheckUtils]: 22: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,893 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10379#true} {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,893 INFO L272 TraceCheckUtils]: 24: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,893 INFO L290 TraceCheckUtils]: 25: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,893 INFO L290 TraceCheckUtils]: 26: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,893 INFO L290 TraceCheckUtils]: 27: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,894 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10379#true} {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,894 INFO L272 TraceCheckUtils]: 29: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,894 INFO L290 TraceCheckUtils]: 30: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,894 INFO L290 TraceCheckUtils]: 31: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,894 INFO L290 TraceCheckUtils]: 32: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,895 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {10379#true} {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,895 INFO L290 TraceCheckUtils]: 34: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,895 INFO L290 TraceCheckUtils]: 35: Hoare triple {10432#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,896 INFO L290 TraceCheckUtils]: 36: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,896 INFO L290 TraceCheckUtils]: 37: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,896 INFO L272 TraceCheckUtils]: 38: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,896 INFO L290 TraceCheckUtils]: 39: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,896 INFO L290 TraceCheckUtils]: 40: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,897 INFO L290 TraceCheckUtils]: 41: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,897 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10379#true} {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #68#return; {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,897 INFO L272 TraceCheckUtils]: 43: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,897 INFO L290 TraceCheckUtils]: 44: Hoare triple {10379#true} ~cond := #in~cond; {10518#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:21,898 INFO L290 TraceCheckUtils]: 45: Hoare triple {10518#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:21,898 INFO L290 TraceCheckUtils]: 46: Hoare triple {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:21,899 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #70#return; {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,899 INFO L272 TraceCheckUtils]: 48: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,899 INFO L290 TraceCheckUtils]: 49: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,899 INFO L290 TraceCheckUtils]: 50: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,899 INFO L290 TraceCheckUtils]: 51: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,899 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10379#true} {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #72#return; {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,900 INFO L290 TraceCheckUtils]: 53: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~a~0 != ~b~0); {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:29:21,900 INFO L290 TraceCheckUtils]: 54: Hoare triple {10490#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,901 INFO L290 TraceCheckUtils]: 55: Hoare triple {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,901 INFO L290 TraceCheckUtils]: 56: Hoare triple {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,901 INFO L272 TraceCheckUtils]: 57: Hoare triple {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:21,901 INFO L290 TraceCheckUtils]: 58: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:21,901 INFO L290 TraceCheckUtils]: 59: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:21,901 INFO L290 TraceCheckUtils]: 60: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:21,902 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {10379#true} {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} #68#return; {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:21,903 INFO L272 TraceCheckUtils]: 62: Hoare triple {10550#(and (= (- 1) (+ main_~r~0 1)) (= (+ main_~a~0 (* main_~y~0 2)) main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10575#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:29:21,903 INFO L290 TraceCheckUtils]: 63: Hoare triple {10575#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10579#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:21,903 INFO L290 TraceCheckUtils]: 64: Hoare triple {10579#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10380#false} is VALID [2022-04-15 08:29:21,903 INFO L290 TraceCheckUtils]: 65: Hoare triple {10380#false} assume !false; {10380#false} is VALID [2022-04-15 08:29:21,903 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 25 proven. 22 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2022-04-15 08:29:21,904 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:29:56,441 INFO L290 TraceCheckUtils]: 65: Hoare triple {10380#false} assume !false; {10380#false} is VALID [2022-04-15 08:29:56,441 INFO L290 TraceCheckUtils]: 64: Hoare triple {10579#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10380#false} is VALID [2022-04-15 08:29:56,442 INFO L290 TraceCheckUtils]: 63: Hoare triple {10575#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10579#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:56,442 INFO L272 TraceCheckUtils]: 62: Hoare triple {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10575#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:29:56,443 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {10379#true} {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:29:56,443 INFO L290 TraceCheckUtils]: 60: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:56,443 INFO L290 TraceCheckUtils]: 59: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:56,443 INFO L290 TraceCheckUtils]: 58: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:56,443 INFO L272 TraceCheckUtils]: 57: Hoare triple {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:56,444 INFO L290 TraceCheckUtils]: 56: Hoare triple {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:29:56,444 INFO L290 TraceCheckUtils]: 55: Hoare triple {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:29:56,996 INFO L290 TraceCheckUtils]: 54: Hoare triple {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10595#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:29:56,997 INFO L290 TraceCheckUtils]: 53: Hoare triple {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:29:56,997 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10379#true} {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:29:56,997 INFO L290 TraceCheckUtils]: 51: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:56,997 INFO L290 TraceCheckUtils]: 50: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:56,997 INFO L290 TraceCheckUtils]: 49: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:56,998 INFO L272 TraceCheckUtils]: 48: Hoare triple {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:56,998 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #70#return; {10620#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:29:56,999 INFO L290 TraceCheckUtils]: 46: Hoare triple {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:56,999 INFO L290 TraceCheckUtils]: 45: Hoare triple {10652#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10522#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:56,999 INFO L290 TraceCheckUtils]: 44: Hoare triple {10379#true} ~cond := #in~cond; {10652#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:29:56,999 INFO L272 TraceCheckUtils]: 43: Hoare triple {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,000 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10379#true} {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #68#return; {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:57,000 INFO L290 TraceCheckUtils]: 41: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,000 INFO L290 TraceCheckUtils]: 40: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:57,000 INFO L290 TraceCheckUtils]: 39: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:57,000 INFO L272 TraceCheckUtils]: 38: Hoare triple {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,001 INFO L290 TraceCheckUtils]: 37: Hoare triple {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 5);havoc #t~post6; {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:57,001 INFO L290 TraceCheckUtils]: 36: Hoare triple {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:57,300 INFO L290 TraceCheckUtils]: 35: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {10642#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 08:29:57,300 INFO L290 TraceCheckUtils]: 34: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume !!(~a~0 != ~b~0); {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,301 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {10379#true} {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #72#return; {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,301 INFO L290 TraceCheckUtils]: 32: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,301 INFO L290 TraceCheckUtils]: 31: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:57,301 INFO L290 TraceCheckUtils]: 30: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:57,301 INFO L272 TraceCheckUtils]: 29: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,302 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10379#true} {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #70#return; {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,302 INFO L290 TraceCheckUtils]: 27: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,302 INFO L290 TraceCheckUtils]: 26: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:57,302 INFO L290 TraceCheckUtils]: 25: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:57,302 INFO L272 TraceCheckUtils]: 24: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,303 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10379#true} {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #68#return; {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,303 INFO L290 TraceCheckUtils]: 22: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:57,303 INFO L290 TraceCheckUtils]: 20: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:57,303 INFO L272 TraceCheckUtils]: 19: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,303 INFO L290 TraceCheckUtils]: 18: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume !!(#t~post6 < 5);havoc #t~post6; {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,304 INFO L290 TraceCheckUtils]: 17: Hoare triple {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,304 INFO L290 TraceCheckUtils]: 16: Hoare triple {10379#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10680#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* (- 1) main_~b~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-15 08:29:57,305 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10379#true} {10379#true} #66#return; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 14: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 13: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 12: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L272 TraceCheckUtils]: 11: Hoare triple {10379#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10379#true} {10379#true} #64#return; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 9: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {10379#true} assume !(0 == ~cond); {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 7: Hoare triple {10379#true} ~cond := #in~cond; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L272 TraceCheckUtils]: 6: Hoare triple {10379#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 5: Hoare triple {10379#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L272 TraceCheckUtils]: 4: Hoare triple {10379#true} call #t~ret7 := main(); {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10379#true} {10379#true} #82#return; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {10379#true} assume true; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {10379#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10379#true} is VALID [2022-04-15 08:29:57,305 INFO L272 TraceCheckUtils]: 0: Hoare triple {10379#true} call ULTIMATE.init(); {10379#true} is VALID [2022-04-15 08:29:57,306 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 29 proven. 18 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2022-04-15 08:29:57,306 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:29:57,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [144427466] [2022-04-15 08:29:57,306 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:29:57,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1386334328] [2022-04-15 08:29:57,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1386334328] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:29:57,306 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:29:57,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 14 [2022-04-15 08:29:57,306 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:29:57,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [825416293] [2022-04-15 08:29:57,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [825416293] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:29:57,306 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:29:57,307 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:29:57,307 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [241928721] [2022-04-15 08:29:57,307 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:29:57,307 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-15 08:29:57,307 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:29:57,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:29:57,346 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-15 08:29:57,346 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:29:57,346 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:57,346 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:29:57,346 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:29:57,347 INFO L87 Difference]: Start difference. First operand 172 states and 208 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:29:58,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:58,280 INFO L93 Difference]: Finished difference Result 199 states and 247 transitions. [2022-04-15 08:29:58,280 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:29:58,280 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-15 08:29:58,280 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:29:58,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:29:58,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-15 08:29:58,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:29:58,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-15 08:29:58,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2022-04-15 08:29:58,358 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:29:58,361 INFO L225 Difference]: With dead ends: 199 [2022-04-15 08:29:58,361 INFO L226 Difference]: Without dead ends: 197 [2022-04-15 08:29:58,361 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 117 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:29:58,362 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 15 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 340 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 347 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 340 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 08:29:58,362 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 194 Invalid, 347 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 340 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 08:29:58,362 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-15 08:29:58,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 181. [2022-04-15 08:29:58,496 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:29:58,496 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 08:29:58,496 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 08:29:58,496 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 08:29:58,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:58,500 INFO L93 Difference]: Finished difference Result 197 states and 245 transitions. [2022-04-15 08:29:58,500 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 245 transitions. [2022-04-15 08:29:58,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:58,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:58,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 197 states. [2022-04-15 08:29:58,501 INFO L87 Difference]: Start difference. First operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 197 states. [2022-04-15 08:29:58,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:29:58,504 INFO L93 Difference]: Finished difference Result 197 states and 245 transitions. [2022-04-15 08:29:58,504 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 245 transitions. [2022-04-15 08:29:58,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:29:58,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:29:58,504 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:29:58,504 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:29:58,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 181 states, 112 states have (on average 1.1696428571428572) internal successors, (131), 119 states have internal predecessors, (131), 46 states have call successors, (46), 23 states have call predecessors, (46), 22 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 08:29:58,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 181 states to 181 states and 220 transitions. [2022-04-15 08:29:58,507 INFO L78 Accepts]: Start accepts. Automaton has 181 states and 220 transitions. Word has length 66 [2022-04-15 08:29:58,508 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:29:58,508 INFO L478 AbstractCegarLoop]: Abstraction has 181 states and 220 transitions. [2022-04-15 08:29:58,508 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:29:58,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 181 states and 220 transitions. [2022-04-15 08:29:58,744 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 220 edges. 220 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:29:58,745 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 220 transitions. [2022-04-15 08:29:58,745 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-15 08:29:58,745 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:29:58,745 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:29:58,762 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-15 08:29:58,946 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-15 08:29:58,946 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:29:58,946 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:29:58,946 INFO L85 PathProgramCache]: Analyzing trace with hash 1105968494, now seen corresponding path program 3 times [2022-04-15 08:29:58,946 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:29:58,946 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [527448846] [2022-04-15 08:29:58,947 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:29:58,947 INFO L85 PathProgramCache]: Analyzing trace with hash 1105968494, now seen corresponding path program 4 times [2022-04-15 08:29:58,947 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:29:58,947 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [842219968] [2022-04-15 08:29:58,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:29:58,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:29:58,955 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:29:58,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [296070280] [2022-04-15 08:29:58,955 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:29:58,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:29:58,955 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:29:58,959 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:29:58,966 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-15 08:29:59,005 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:29:59,006 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:29:59,007 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-15 08:29:59,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:29:59,017 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:29:59,454 INFO L272 TraceCheckUtils]: 0: Hoare triple {11946#true} call ULTIMATE.init(); {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {11946#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11946#true} {11946#true} #82#return; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {11946#true} call #t~ret7 := main(); {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {11946#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L272 TraceCheckUtils]: 6: Hoare triple {11946#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 7: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 8: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 9: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11946#true} {11946#true} #64#return; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L272 TraceCheckUtils]: 11: Hoare triple {11946#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 12: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 13: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,454 INFO L290 TraceCheckUtils]: 14: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,455 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11946#true} {11946#true} #66#return; {11946#true} is VALID [2022-04-15 08:29:59,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {11946#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,455 INFO L290 TraceCheckUtils]: 17: Hoare triple {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,456 INFO L272 TraceCheckUtils]: 19: Hoare triple {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,456 INFO L290 TraceCheckUtils]: 21: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,456 INFO L290 TraceCheckUtils]: 22: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,456 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11946#true} {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,456 INFO L272 TraceCheckUtils]: 24: Hoare triple {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,456 INFO L290 TraceCheckUtils]: 25: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,456 INFO L290 TraceCheckUtils]: 26: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,457 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11946#true} {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,457 INFO L272 TraceCheckUtils]: 29: Hoare triple {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,457 INFO L290 TraceCheckUtils]: 30: Hoare triple {11946#true} ~cond := #in~cond; {12042#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:59,457 INFO L290 TraceCheckUtils]: 31: Hoare triple {12042#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:59,458 INFO L290 TraceCheckUtils]: 32: Hoare triple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:59,458 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} {11999#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {12053#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,459 INFO L290 TraceCheckUtils]: 34: Hoare triple {12053#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {12053#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,460 INFO L290 TraceCheckUtils]: 35: Hoare triple {12053#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,460 INFO L290 TraceCheckUtils]: 36: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,461 INFO L290 TraceCheckUtils]: 37: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,461 INFO L272 TraceCheckUtils]: 38: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,461 INFO L290 TraceCheckUtils]: 39: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,461 INFO L290 TraceCheckUtils]: 40: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,461 INFO L290 TraceCheckUtils]: 41: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,461 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11946#true} {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #68#return; {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,461 INFO L272 TraceCheckUtils]: 43: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,461 INFO L290 TraceCheckUtils]: 44: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,462 INFO L290 TraceCheckUtils]: 45: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,462 INFO L290 TraceCheckUtils]: 46: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,462 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11946#true} {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #70#return; {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,462 INFO L272 TraceCheckUtils]: 48: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,462 INFO L290 TraceCheckUtils]: 49: Hoare triple {11946#true} ~cond := #in~cond; {12042#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:59,463 INFO L290 TraceCheckUtils]: 50: Hoare triple {12042#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:59,463 INFO L290 TraceCheckUtils]: 51: Hoare triple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:29:59,463 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #72#return; {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,464 INFO L290 TraceCheckUtils]: 53: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:29:59,464 INFO L290 TraceCheckUtils]: 54: Hoare triple {12060#(and (= main_~r~0 0) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-15 08:29:59,465 INFO L290 TraceCheckUtils]: 55: Hoare triple {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-15 08:29:59,465 INFO L290 TraceCheckUtils]: 56: Hoare triple {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-15 08:29:59,465 INFO L272 TraceCheckUtils]: 57: Hoare triple {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:29:59,465 INFO L290 TraceCheckUtils]: 58: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:29:59,465 INFO L290 TraceCheckUtils]: 59: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:29:59,466 INFO L290 TraceCheckUtils]: 60: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:29:59,466 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {11946#true} {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} #68#return; {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} is VALID [2022-04-15 08:29:59,466 INFO L272 TraceCheckUtils]: 62: Hoare triple {12118#(and (= (+ 2 (* (- 1) main_~p~0)) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) (+ (* main_~x~0 (+ 2 (* (- 1) main_~p~0))) main_~y~0 (* (- 1) main_~x~0))) (= (- 1) main_~r~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12143#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:29:59,467 INFO L290 TraceCheckUtils]: 63: Hoare triple {12143#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12147#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:29:59,467 INFO L290 TraceCheckUtils]: 64: Hoare triple {12147#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11947#false} is VALID [2022-04-15 08:29:59,467 INFO L290 TraceCheckUtils]: 65: Hoare triple {11947#false} assume !false; {11947#false} is VALID [2022-04-15 08:29:59,467 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 30 proven. 29 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2022-04-15 08:29:59,467 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:30:47,409 INFO L290 TraceCheckUtils]: 65: Hoare triple {11947#false} assume !false; {11947#false} is VALID [2022-04-15 08:30:47,410 INFO L290 TraceCheckUtils]: 64: Hoare triple {12147#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11947#false} is VALID [2022-04-15 08:30:47,410 INFO L290 TraceCheckUtils]: 63: Hoare triple {12143#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12147#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:30:47,411 INFO L272 TraceCheckUtils]: 62: Hoare triple {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12143#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:30:47,411 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {11946#true} {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:30:47,411 INFO L290 TraceCheckUtils]: 60: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:47,411 INFO L290 TraceCheckUtils]: 59: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:47,412 INFO L290 TraceCheckUtils]: 58: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:47,412 INFO L272 TraceCheckUtils]: 57: Hoare triple {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:47,412 INFO L290 TraceCheckUtils]: 56: Hoare triple {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:30:47,412 INFO L290 TraceCheckUtils]: 55: Hoare triple {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:30:47,511 INFO L290 TraceCheckUtils]: 54: Hoare triple {12188#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {12163#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:30:47,512 INFO L290 TraceCheckUtils]: 53: Hoare triple {12188#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {12188#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:30:47,513 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #72#return; {12188#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:30:47,513 INFO L290 TraceCheckUtils]: 51: Hoare triple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:30:47,513 INFO L290 TraceCheckUtils]: 50: Hoare triple {12205#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:30:47,513 INFO L290 TraceCheckUtils]: 49: Hoare triple {11946#true} ~cond := #in~cond; {12205#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:30:47,514 INFO L272 TraceCheckUtils]: 48: Hoare triple {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:47,514 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11946#true} {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #70#return; {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 08:30:47,514 INFO L290 TraceCheckUtils]: 46: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:47,514 INFO L290 TraceCheckUtils]: 45: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:47,514 INFO L290 TraceCheckUtils]: 44: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:47,514 INFO L272 TraceCheckUtils]: 43: Hoare triple {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:47,515 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11946#true} {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #68#return; {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 08:30:47,515 INFO L290 TraceCheckUtils]: 41: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:47,515 INFO L290 TraceCheckUtils]: 40: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:47,515 INFO L290 TraceCheckUtils]: 39: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:47,515 INFO L272 TraceCheckUtils]: 38: Hoare triple {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:47,516 INFO L290 TraceCheckUtils]: 37: Hoare triple {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 5);havoc #t~post6; {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 08:30:47,516 INFO L290 TraceCheckUtils]: 36: Hoare triple {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 08:30:48,619 INFO L290 TraceCheckUtils]: 35: Hoare triple {12248#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {12195#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 08:30:48,620 INFO L290 TraceCheckUtils]: 34: Hoare triple {12248#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} assume !!(~a~0 != ~b~0); {12248#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-15 08:30:48,621 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} {11946#true} #72#return; {12248#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ main_~a~0 (* (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (- 1)) (* (- 1) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-15 08:30:48,622 INFO L290 TraceCheckUtils]: 32: Hoare triple {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:30:48,622 INFO L290 TraceCheckUtils]: 31: Hoare triple {12205#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12046#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:30:48,622 INFO L290 TraceCheckUtils]: 30: Hoare triple {11946#true} ~cond := #in~cond; {12205#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:30:48,622 INFO L272 TraceCheckUtils]: 29: Hoare triple {11946#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:48,622 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11946#true} {11946#true} #70#return; {11946#true} is VALID [2022-04-15 08:30:48,622 INFO L290 TraceCheckUtils]: 27: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 26: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 25: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L272 TraceCheckUtils]: 24: Hoare triple {11946#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11946#true} {11946#true} #68#return; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 22: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 21: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 20: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L272 TraceCheckUtils]: 19: Hoare triple {11946#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 18: Hoare triple {11946#true} assume !!(#t~post6 < 5);havoc #t~post6; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 17: Hoare triple {11946#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 16: Hoare triple {11946#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11946#true} {11946#true} #66#return; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 14: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 13: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 12: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L272 TraceCheckUtils]: 11: Hoare triple {11946#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11946#true} {11946#true} #64#return; {11946#true} is VALID [2022-04-15 08:30:48,623 INFO L290 TraceCheckUtils]: 9: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L290 TraceCheckUtils]: 8: Hoare triple {11946#true} assume !(0 == ~cond); {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L290 TraceCheckUtils]: 7: Hoare triple {11946#true} ~cond := #in~cond; {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L272 TraceCheckUtils]: 6: Hoare triple {11946#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L290 TraceCheckUtils]: 5: Hoare triple {11946#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L272 TraceCheckUtils]: 4: Hoare triple {11946#true} call #t~ret7 := main(); {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11946#true} {11946#true} #82#return; {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L290 TraceCheckUtils]: 2: Hoare triple {11946#true} assume true; {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L290 TraceCheckUtils]: 1: Hoare triple {11946#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L272 TraceCheckUtils]: 0: Hoare triple {11946#true} call ULTIMATE.init(); {11946#true} is VALID [2022-04-15 08:30:48,624 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 43 proven. 16 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2022-04-15 08:30:48,624 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:30:48,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [842219968] [2022-04-15 08:30:48,625 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:30:48,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [296070280] [2022-04-15 08:30:48,625 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [296070280] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:30:48,625 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:30:48,625 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 15 [2022-04-15 08:30:48,625 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:30:48,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [527448846] [2022-04-15 08:30:48,625 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [527448846] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:30:48,625 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:30:48,625 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 08:30:48,625 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [855764035] [2022-04-15 08:30:48,625 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:30:48,626 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-15 08:30:48,626 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:30:48,626 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:30:48,671 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-15 08:30:48,672 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 08:30:48,672 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:30:48,672 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 08:30:48,672 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=161, Unknown=0, NotChecked=0, Total=210 [2022-04-15 08:30:48,672 INFO L87 Difference]: Start difference. First operand 181 states and 220 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:30:49,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:30:49,705 INFO L93 Difference]: Finished difference Result 208 states and 259 transitions. [2022-04-15 08:30:49,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:30:49,705 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) Word has length 66 [2022-04-15 08:30:49,705 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:30:49,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:30:49,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-15 08:30:49,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:30:49,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-15 08:30:49,707 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2022-04-15 08:30:49,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:30:49,803 INFO L225 Difference]: With dead ends: 208 [2022-04-15 08:30:49,803 INFO L226 Difference]: Without dead ends: 206 [2022-04-15 08:30:49,804 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 116 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=62, Invalid=210, Unknown=0, NotChecked=0, Total=272 [2022-04-15 08:30:49,804 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 18 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 347 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 356 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 347 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 08:30:49,804 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 199 Invalid, 356 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 347 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 08:30:49,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2022-04-15 08:30:49,955 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 190. [2022-04-15 08:30:49,955 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:30:49,955 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 08:30:49,956 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 08:30:49,956 INFO L87 Difference]: Start difference. First operand 206 states. Second operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 08:30:49,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:30:49,959 INFO L93 Difference]: Finished difference Result 206 states and 257 transitions. [2022-04-15 08:30:49,960 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 257 transitions. [2022-04-15 08:30:49,960 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:30:49,960 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:30:49,960 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) Second operand 206 states. [2022-04-15 08:30:49,961 INFO L87 Difference]: Start difference. First operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) Second operand 206 states. [2022-04-15 08:30:49,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:30:49,964 INFO L93 Difference]: Finished difference Result 206 states and 257 transitions. [2022-04-15 08:30:49,964 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 257 transitions. [2022-04-15 08:30:49,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:30:49,965 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:30:49,965 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:30:49,965 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:30:49,965 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 117 states have (on average 1.170940170940171) internal successors, (137), 124 states have internal predecessors, (137), 49 states have call successors, (49), 24 states have call predecessors, (49), 23 states have return successors, (46), 41 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 08:30:49,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 232 transitions. [2022-04-15 08:30:49,969 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 232 transitions. Word has length 66 [2022-04-15 08:30:49,969 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:30:49,969 INFO L478 AbstractCegarLoop]: Abstraction has 190 states and 232 transitions. [2022-04-15 08:30:49,969 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 08:30:49,969 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 232 transitions. [2022-04-15 08:30:50,266 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:30:50,267 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 232 transitions. [2022-04-15 08:30:50,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-15 08:30:50,267 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:30:50,268 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:30:50,284 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-15 08:30:50,468 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-15 08:30:50,468 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:30:50,469 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:30:50,469 INFO L85 PathProgramCache]: Analyzing trace with hash 1181721515, now seen corresponding path program 5 times [2022-04-15 08:30:50,469 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:30:50,469 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [346316905] [2022-04-15 08:30:50,469 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:30:50,469 INFO L85 PathProgramCache]: Analyzing trace with hash 1181721515, now seen corresponding path program 6 times [2022-04-15 08:30:50,469 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:30:50,469 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1645352845] [2022-04-15 08:30:50,469 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:30:50,469 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:30:50,478 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:30:50,478 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1669866067] [2022-04-15 08:30:50,478 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:30:50,478 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:30:50,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:30:50,479 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:30:50,486 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-15 08:30:50,535 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 08:30:50,535 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:30:50,536 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-15 08:30:50,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:30:50,552 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:30:50,991 INFO L272 TraceCheckUtils]: 0: Hoare triple {13568#true} call ULTIMATE.init(); {13568#true} is VALID [2022-04-15 08:30:50,991 INFO L290 TraceCheckUtils]: 1: Hoare triple {13568#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13568#true} is VALID [2022-04-15 08:30:50,991 INFO L290 TraceCheckUtils]: 2: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,991 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13568#true} {13568#true} #82#return; {13568#true} is VALID [2022-04-15 08:30:50,991 INFO L272 TraceCheckUtils]: 4: Hoare triple {13568#true} call #t~ret7 := main(); {13568#true} is VALID [2022-04-15 08:30:50,991 INFO L290 TraceCheckUtils]: 5: Hoare triple {13568#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13568#true} is VALID [2022-04-15 08:30:50,991 INFO L272 TraceCheckUtils]: 6: Hoare triple {13568#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 7: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 8: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 9: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13568#true} {13568#true} #64#return; {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L272 TraceCheckUtils]: 11: Hoare triple {13568#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 12: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 13: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 14: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13568#true} {13568#true} #66#return; {13568#true} is VALID [2022-04-15 08:30:50,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {13568#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,993 INFO L290 TraceCheckUtils]: 17: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,993 INFO L272 TraceCheckUtils]: 19: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:50,993 INFO L290 TraceCheckUtils]: 21: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:50,993 INFO L290 TraceCheckUtils]: 22: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,994 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13568#true} {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,994 INFO L272 TraceCheckUtils]: 24: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,994 INFO L290 TraceCheckUtils]: 25: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:50,994 INFO L290 TraceCheckUtils]: 26: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:50,994 INFO L290 TraceCheckUtils]: 27: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,995 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {13568#true} {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,995 INFO L272 TraceCheckUtils]: 29: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:50,995 INFO L290 TraceCheckUtils]: 31: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:50,995 INFO L290 TraceCheckUtils]: 32: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,996 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {13568#true} {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #72#return; {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,996 INFO L290 TraceCheckUtils]: 34: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,997 INFO L290 TraceCheckUtils]: 35: Hoare triple {13621#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,997 INFO L290 TraceCheckUtils]: 36: Hoare triple {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,997 INFO L290 TraceCheckUtils]: 37: Hoare triple {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,997 INFO L272 TraceCheckUtils]: 38: Hoare triple {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,997 INFO L290 TraceCheckUtils]: 39: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:50,997 INFO L290 TraceCheckUtils]: 40: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:50,998 INFO L290 TraceCheckUtils]: 41: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:50,998 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13568#true} {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:50,998 INFO L272 TraceCheckUtils]: 43: Hoare triple {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:50,998 INFO L290 TraceCheckUtils]: 44: Hoare triple {13568#true} ~cond := #in~cond; {13707#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:30:50,999 INFO L290 TraceCheckUtils]: 45: Hoare triple {13707#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:30:50,999 INFO L290 TraceCheckUtils]: 46: Hoare triple {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:30:51,000 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} {13679#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:51,000 INFO L272 TraceCheckUtils]: 48: Hoare triple {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:51,000 INFO L290 TraceCheckUtils]: 49: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:51,000 INFO L290 TraceCheckUtils]: 50: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:51,000 INFO L290 TraceCheckUtils]: 51: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:51,001 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13568#true} {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #72#return; {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:51,001 INFO L290 TraceCheckUtils]: 53: Hoare triple {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:30:51,004 INFO L290 TraceCheckUtils]: 54: Hoare triple {13718#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-15 08:30:51,004 INFO L290 TraceCheckUtils]: 55: Hoare triple {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-15 08:30:51,005 INFO L290 TraceCheckUtils]: 56: Hoare triple {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} assume !!(#t~post6 < 5);havoc #t~post6; {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-15 08:30:51,005 INFO L272 TraceCheckUtils]: 57: Hoare triple {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:51,005 INFO L290 TraceCheckUtils]: 58: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:51,005 INFO L290 TraceCheckUtils]: 59: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:51,005 INFO L290 TraceCheckUtils]: 60: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:51,006 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {13568#true} {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} #68#return; {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-15 08:30:51,006 INFO L272 TraceCheckUtils]: 62: Hoare triple {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:30:51,006 INFO L290 TraceCheckUtils]: 63: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:30:51,006 INFO L290 TraceCheckUtils]: 64: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:30:51,006 INFO L290 TraceCheckUtils]: 65: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:30:51,007 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {13568#true} {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} #70#return; {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} is VALID [2022-04-15 08:30:51,007 INFO L272 TraceCheckUtils]: 67: Hoare triple {13740#(and (= (+ (* main_~x~0 (* (- 1) main_~q~0)) (* (- 1) main_~y~0)) (+ main_~y~0 (* (- 1) main_~b~0))) (= main_~s~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13780#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:30:51,008 INFO L290 TraceCheckUtils]: 68: Hoare triple {13780#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13784#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:30:51,008 INFO L290 TraceCheckUtils]: 69: Hoare triple {13784#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13569#false} is VALID [2022-04-15 08:30:51,008 INFO L290 TraceCheckUtils]: 70: Hoare triple {13569#false} assume !false; {13569#false} is VALID [2022-04-15 08:30:51,008 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 27 proven. 27 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-15 08:30:51,008 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:31:06,315 INFO L290 TraceCheckUtils]: 70: Hoare triple {13569#false} assume !false; {13569#false} is VALID [2022-04-15 08:31:06,316 INFO L290 TraceCheckUtils]: 69: Hoare triple {13784#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13569#false} is VALID [2022-04-15 08:31:06,316 INFO L290 TraceCheckUtils]: 68: Hoare triple {13780#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13784#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:06,317 INFO L272 TraceCheckUtils]: 67: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13780#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:06,317 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {13568#true} {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,317 INFO L290 TraceCheckUtils]: 65: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,317 INFO L290 TraceCheckUtils]: 64: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,317 INFO L290 TraceCheckUtils]: 63: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,317 INFO L272 TraceCheckUtils]: 62: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,318 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {13568#true} {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,318 INFO L290 TraceCheckUtils]: 60: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,318 INFO L290 TraceCheckUtils]: 59: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,318 INFO L290 TraceCheckUtils]: 58: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,318 INFO L272 TraceCheckUtils]: 57: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,319 INFO L290 TraceCheckUtils]: 56: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,319 INFO L290 TraceCheckUtils]: 55: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,496 INFO L290 TraceCheckUtils]: 54: Hoare triple {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,496 INFO L290 TraceCheckUtils]: 53: Hoare triple {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !!(~a~0 != ~b~0); {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-15 08:31:06,497 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13568#true} {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} #72#return; {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-15 08:31:06,497 INFO L290 TraceCheckUtils]: 51: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,497 INFO L290 TraceCheckUtils]: 50: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,497 INFO L290 TraceCheckUtils]: 49: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,497 INFO L272 TraceCheckUtils]: 48: Hoare triple {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,498 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #70#return; {13840#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-15 08:31:06,498 INFO L290 TraceCheckUtils]: 46: Hoare triple {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:06,499 INFO L290 TraceCheckUtils]: 45: Hoare triple {13872#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13711#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:06,499 INFO L290 TraceCheckUtils]: 44: Hoare triple {13568#true} ~cond := #in~cond; {13872#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:31:06,499 INFO L272 TraceCheckUtils]: 43: Hoare triple {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,500 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13568#true} {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #68#return; {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:06,500 INFO L290 TraceCheckUtils]: 41: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,500 INFO L290 TraceCheckUtils]: 40: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,500 INFO L290 TraceCheckUtils]: 39: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,500 INFO L272 TraceCheckUtils]: 38: Hoare triple {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,500 INFO L290 TraceCheckUtils]: 37: Hoare triple {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:06,501 INFO L290 TraceCheckUtils]: 36: Hoare triple {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:06,502 INFO L290 TraceCheckUtils]: 35: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {13862#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:06,502 INFO L290 TraceCheckUtils]: 34: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~a~0 != ~b~0); {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,503 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {13568#true} {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #72#return; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,503 INFO L290 TraceCheckUtils]: 32: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,503 INFO L290 TraceCheckUtils]: 31: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,503 INFO L290 TraceCheckUtils]: 30: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,503 INFO L272 TraceCheckUtils]: 29: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,504 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {13568#true} {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,504 INFO L290 TraceCheckUtils]: 27: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,504 INFO L290 TraceCheckUtils]: 26: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,504 INFO L290 TraceCheckUtils]: 25: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,504 INFO L272 TraceCheckUtils]: 24: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,504 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13568#true} {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,504 INFO L290 TraceCheckUtils]: 22: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,505 INFO L290 TraceCheckUtils]: 21: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,505 INFO L272 TraceCheckUtils]: 19: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,505 INFO L290 TraceCheckUtils]: 18: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,505 INFO L290 TraceCheckUtils]: 17: Hoare triple {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 16: Hoare triple {13568#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13800#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:06,506 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13568#true} {13568#true} #66#return; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 14: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 13: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L272 TraceCheckUtils]: 11: Hoare triple {13568#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13568#true} {13568#true} #64#return; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 9: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {13568#true} assume !(0 == ~cond); {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 7: Hoare triple {13568#true} ~cond := #in~cond; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L272 TraceCheckUtils]: 6: Hoare triple {13568#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 5: Hoare triple {13568#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {13568#true} call #t~ret7 := main(); {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13568#true} {13568#true} #82#return; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {13568#true} assume true; {13568#true} is VALID [2022-04-15 08:31:06,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {13568#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13568#true} is VALID [2022-04-15 08:31:06,507 INFO L272 TraceCheckUtils]: 0: Hoare triple {13568#true} call ULTIMATE.init(); {13568#true} is VALID [2022-04-15 08:31:06,507 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 31 proven. 18 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-15 08:31:06,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:31:06,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1645352845] [2022-04-15 08:31:06,507 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:31:06,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1669866067] [2022-04-15 08:31:06,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1669866067] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:31:06,507 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:31:06,507 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-15 08:31:06,507 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:31:06,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [346316905] [2022-04-15 08:31:06,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [346316905] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:31:06,508 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:31:06,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 08:31:06,508 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [387913929] [2022-04-15 08:31:06,508 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:31:06,508 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 71 [2022-04-15 08:31:06,508 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:31:06,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 08:31:06,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:06,570 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 08:31:06,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:06,571 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 08:31:06,571 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:31:06,571 INFO L87 Difference]: Start difference. First operand 190 states and 232 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 08:31:07,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:07,687 INFO L93 Difference]: Finished difference Result 214 states and 271 transitions. [2022-04-15 08:31:07,687 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 08:31:07,687 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 71 [2022-04-15 08:31:07,688 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:31:07,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 08:31:07,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 86 transitions. [2022-04-15 08:31:07,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 08:31:07,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 86 transitions. [2022-04-15 08:31:07,690 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 86 transitions. [2022-04-15 08:31:07,776 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:07,779 INFO L225 Difference]: With dead ends: 214 [2022-04-15 08:31:07,779 INFO L226 Difference]: Without dead ends: 208 [2022-04-15 08:31:07,780 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:31:07,780 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 14 mSDsluCounter, 176 mSDsCounter, 0 mSdLazyCounter, 372 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 215 SdHoareTripleChecker+Invalid, 377 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 372 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 08:31:07,780 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 215 Invalid, 377 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 372 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 08:31:07,780 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 208 states. [2022-04-15 08:31:07,927 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 208 to 192. [2022-04-15 08:31:07,927 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:31:07,928 INFO L82 GeneralOperation]: Start isEquivalent. First operand 208 states. Second operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-15 08:31:07,928 INFO L74 IsIncluded]: Start isIncluded. First operand 208 states. Second operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-15 08:31:07,928 INFO L87 Difference]: Start difference. First operand 208 states. Second operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-15 08:31:07,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:07,932 INFO L93 Difference]: Finished difference Result 208 states and 259 transitions. [2022-04-15 08:31:07,932 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 259 transitions. [2022-04-15 08:31:07,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:07,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:07,932 INFO L74 IsIncluded]: Start isIncluded. First operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) Second operand 208 states. [2022-04-15 08:31:07,933 INFO L87 Difference]: Start difference. First operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) Second operand 208 states. [2022-04-15 08:31:07,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:07,936 INFO L93 Difference]: Finished difference Result 208 states and 259 transitions. [2022-04-15 08:31:07,936 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 259 transitions. [2022-04-15 08:31:07,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:07,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:07,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:31:07,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:31:07,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 192 states, 117 states have (on average 1.170940170940171) internal successors, (137), 125 states have internal predecessors, (137), 51 states have call successors, (51), 24 states have call predecessors, (51), 23 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-15 08:31:07,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 192 states to 192 states and 236 transitions. [2022-04-15 08:31:07,940 INFO L78 Accepts]: Start accepts. Automaton has 192 states and 236 transitions. Word has length 71 [2022-04-15 08:31:07,940 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:31:07,940 INFO L478 AbstractCegarLoop]: Abstraction has 192 states and 236 transitions. [2022-04-15 08:31:07,940 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 08:31:07,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 192 states and 236 transitions. [2022-04-15 08:31:08,246 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 236 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:08,246 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 236 transitions. [2022-04-15 08:31:08,246 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-15 08:31:08,246 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:31:08,247 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:31:08,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-15 08:31:08,447 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:08,447 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:31:08,447 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:31:08,447 INFO L85 PathProgramCache]: Analyzing trace with hash 787354729, now seen corresponding path program 3 times [2022-04-15 08:31:08,448 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:08,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1709102098] [2022-04-15 08:31:08,448 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:31:08,448 INFO L85 PathProgramCache]: Analyzing trace with hash 787354729, now seen corresponding path program 4 times [2022-04-15 08:31:08,448 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:31:08,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1684190532] [2022-04-15 08:31:08,448 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:31:08,448 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:31:08,459 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:31:08,459 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [339060892] [2022-04-15 08:31:08,459 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:31:08,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:08,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:31:08,470 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:31:08,471 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-15 08:31:08,524 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:31:08,524 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:31:08,526 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-15 08:31:08,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:31:08,538 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:31:09,067 INFO L272 TraceCheckUtils]: 0: Hoare triple {15239#true} call ULTIMATE.init(); {15239#true} is VALID [2022-04-15 08:31:09,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {15239#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {15239#true} is VALID [2022-04-15 08:31:09,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,067 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15239#true} {15239#true} #82#return; {15239#true} is VALID [2022-04-15 08:31:09,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {15239#true} call #t~ret7 := main(); {15239#true} is VALID [2022-04-15 08:31:09,067 INFO L290 TraceCheckUtils]: 5: Hoare triple {15239#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L272 TraceCheckUtils]: 6: Hoare triple {15239#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 7: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15239#true} {15239#true} #64#return; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L272 TraceCheckUtils]: 11: Hoare triple {15239#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 12: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 13: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 14: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15239#true} {15239#true} #66#return; {15239#true} is VALID [2022-04-15 08:31:09,068 INFO L290 TraceCheckUtils]: 16: Hoare triple {15239#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,069 INFO L290 TraceCheckUtils]: 17: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,069 INFO L290 TraceCheckUtils]: 18: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,069 INFO L272 TraceCheckUtils]: 19: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,069 INFO L290 TraceCheckUtils]: 21: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,070 INFO L290 TraceCheckUtils]: 22: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,070 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15239#true} {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,070 INFO L272 TraceCheckUtils]: 24: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,070 INFO L290 TraceCheckUtils]: 25: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,070 INFO L290 TraceCheckUtils]: 26: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,071 INFO L290 TraceCheckUtils]: 27: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,071 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {15239#true} {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,071 INFO L272 TraceCheckUtils]: 29: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,072 INFO L290 TraceCheckUtils]: 30: Hoare triple {15239#true} ~cond := #in~cond; {15335#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:09,072 INFO L290 TraceCheckUtils]: 31: Hoare triple {15335#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:09,072 INFO L290 TraceCheckUtils]: 32: Hoare triple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:09,073 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,074 INFO L290 TraceCheckUtils]: 35: Hoare triple {15292#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,074 INFO L290 TraceCheckUtils]: 36: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,075 INFO L290 TraceCheckUtils]: 37: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,075 INFO L272 TraceCheckUtils]: 38: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,075 INFO L290 TraceCheckUtils]: 39: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,075 INFO L290 TraceCheckUtils]: 40: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,075 INFO L290 TraceCheckUtils]: 41: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,075 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15239#true} {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #68#return; {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,076 INFO L272 TraceCheckUtils]: 43: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,076 INFO L290 TraceCheckUtils]: 44: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,076 INFO L290 TraceCheckUtils]: 45: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,076 INFO L290 TraceCheckUtils]: 46: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,076 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15239#true} {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #70#return; {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,076 INFO L272 TraceCheckUtils]: 48: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,077 INFO L290 TraceCheckUtils]: 49: Hoare triple {15239#true} ~cond := #in~cond; {15335#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:09,077 INFO L290 TraceCheckUtils]: 50: Hoare triple {15335#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:09,077 INFO L290 TraceCheckUtils]: 51: Hoare triple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:09,078 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #72#return; {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,078 INFO L290 TraceCheckUtils]: 53: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:09,079 INFO L290 TraceCheckUtils]: 54: Hoare triple {15352#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~y~0 (+ main_~b~0 main_~a~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-15 08:31:09,080 INFO L290 TraceCheckUtils]: 55: Hoare triple {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-15 08:31:09,080 INFO L290 TraceCheckUtils]: 56: Hoare triple {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} assume !!(#t~post6 < 5);havoc #t~post6; {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-15 08:31:09,080 INFO L272 TraceCheckUtils]: 57: Hoare triple {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,080 INFO L290 TraceCheckUtils]: 58: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,080 INFO L290 TraceCheckUtils]: 59: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,080 INFO L290 TraceCheckUtils]: 60: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,081 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {15239#true} {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} #68#return; {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-15 08:31:09,081 INFO L272 TraceCheckUtils]: 62: Hoare triple {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:09,081 INFO L290 TraceCheckUtils]: 63: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:09,081 INFO L290 TraceCheckUtils]: 64: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:09,081 INFO L290 TraceCheckUtils]: 65: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:09,082 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {15239#true} {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} #70#return; {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} is VALID [2022-04-15 08:31:09,082 INFO L272 TraceCheckUtils]: 67: Hoare triple {15410#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (= main_~s~0 1) (= (+ main_~q~0 2) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:09,083 INFO L290 TraceCheckUtils]: 68: Hoare triple {15450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:09,083 INFO L290 TraceCheckUtils]: 69: Hoare triple {15454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15240#false} is VALID [2022-04-15 08:31:09,083 INFO L290 TraceCheckUtils]: 70: Hoare triple {15240#false} assume !false; {15240#false} is VALID [2022-04-15 08:31:09,083 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 32 proven. 37 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2022-04-15 08:31:09,083 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:31:29,788 INFO L290 TraceCheckUtils]: 70: Hoare triple {15240#false} assume !false; {15240#false} is VALID [2022-04-15 08:31:29,789 INFO L290 TraceCheckUtils]: 69: Hoare triple {15454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15240#false} is VALID [2022-04-15 08:31:29,789 INFO L290 TraceCheckUtils]: 68: Hoare triple {15450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:29,790 INFO L272 TraceCheckUtils]: 67: Hoare triple {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:29,790 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {15239#true} {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:29,790 INFO L290 TraceCheckUtils]: 65: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:29,790 INFO L290 TraceCheckUtils]: 64: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:29,790 INFO L290 TraceCheckUtils]: 63: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:29,790 INFO L272 TraceCheckUtils]: 62: Hoare triple {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:29,791 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {15239#true} {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:29,792 INFO L290 TraceCheckUtils]: 60: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:29,792 INFO L290 TraceCheckUtils]: 59: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:29,792 INFO L290 TraceCheckUtils]: 58: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:29,792 INFO L272 TraceCheckUtils]: 57: Hoare triple {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:29,792 INFO L290 TraceCheckUtils]: 56: Hoare triple {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:29,792 INFO L290 TraceCheckUtils]: 55: Hoare triple {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:29,945 INFO L290 TraceCheckUtils]: 54: Hoare triple {15510#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15470#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:31:29,945 INFO L290 TraceCheckUtils]: 53: Hoare triple {15510#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} assume !!(~a~0 != ~b~0); {15510#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-15 08:31:29,946 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #72#return; {15510#(= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))} is VALID [2022-04-15 08:31:29,946 INFO L290 TraceCheckUtils]: 51: Hoare triple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:29,947 INFO L290 TraceCheckUtils]: 50: Hoare triple {15527#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:29,947 INFO L290 TraceCheckUtils]: 49: Hoare triple {15239#true} ~cond := #in~cond; {15527#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:31:29,947 INFO L272 TraceCheckUtils]: 48: Hoare triple {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:29,948 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15239#true} {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #70#return; {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:29,948 INFO L290 TraceCheckUtils]: 46: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:29,948 INFO L290 TraceCheckUtils]: 45: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:29,948 INFO L290 TraceCheckUtils]: 44: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:29,948 INFO L272 TraceCheckUtils]: 43: Hoare triple {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:29,949 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15239#true} {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #68#return; {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:29,949 INFO L290 TraceCheckUtils]: 41: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:29,949 INFO L290 TraceCheckUtils]: 40: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:29,949 INFO L290 TraceCheckUtils]: 39: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:29,949 INFO L272 TraceCheckUtils]: 38: Hoare triple {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:29,949 INFO L290 TraceCheckUtils]: 37: Hoare triple {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:29,950 INFO L290 TraceCheckUtils]: 36: Hoare triple {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:30,004 INFO L290 TraceCheckUtils]: 35: Hoare triple {15570#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {15517#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:31:30,005 INFO L290 TraceCheckUtils]: 34: Hoare triple {15570#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} assume !!(~a~0 != ~b~0); {15570#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-15 08:31:30,006 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} {15239#true} #72#return; {15570#(or (not (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0))) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0)) (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0)))) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~a~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-15 08:31:30,007 INFO L290 TraceCheckUtils]: 32: Hoare triple {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:30,007 INFO L290 TraceCheckUtils]: 31: Hoare triple {15527#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15339#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:31:30,007 INFO L290 TraceCheckUtils]: 30: Hoare triple {15239#true} ~cond := #in~cond; {15527#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:31:30,007 INFO L272 TraceCheckUtils]: 29: Hoare triple {15239#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:30,007 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {15239#true} {15239#true} #70#return; {15239#true} is VALID [2022-04-15 08:31:30,007 INFO L290 TraceCheckUtils]: 27: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:30,007 INFO L290 TraceCheckUtils]: 26: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:30,007 INFO L290 TraceCheckUtils]: 25: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:30,007 INFO L272 TraceCheckUtils]: 24: Hoare triple {15239#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15239#true} {15239#true} #68#return; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 22: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 21: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 20: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L272 TraceCheckUtils]: 19: Hoare triple {15239#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 18: Hoare triple {15239#true} assume !!(#t~post6 < 5);havoc #t~post6; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 17: Hoare triple {15239#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {15239#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15239#true} {15239#true} #66#return; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 12: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L272 TraceCheckUtils]: 11: Hoare triple {15239#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15239#true} {15239#true} #64#return; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 8: Hoare triple {15239#true} assume !(0 == ~cond); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 7: Hoare triple {15239#true} ~cond := #in~cond; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L272 TraceCheckUtils]: 6: Hoare triple {15239#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {15239#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15239#true} is VALID [2022-04-15 08:31:30,008 INFO L272 TraceCheckUtils]: 4: Hoare triple {15239#true} call #t~ret7 := main(); {15239#true} is VALID [2022-04-15 08:31:30,009 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15239#true} {15239#true} #82#return; {15239#true} is VALID [2022-04-15 08:31:30,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {15239#true} assume true; {15239#true} is VALID [2022-04-15 08:31:30,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {15239#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {15239#true} is VALID [2022-04-15 08:31:30,009 INFO L272 TraceCheckUtils]: 0: Hoare triple {15239#true} call ULTIMATE.init(); {15239#true} is VALID [2022-04-15 08:31:30,009 INFO L134 CoverageAnalysis]: Checked inductivity of 149 backedges. 42 proven. 27 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2022-04-15 08:31:30,009 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:31:30,009 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1684190532] [2022-04-15 08:31:30,009 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:31:30,009 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [339060892] [2022-04-15 08:31:30,009 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [339060892] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:31:30,009 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:31:30,009 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 14 [2022-04-15 08:31:30,010 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:31:30,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1709102098] [2022-04-15 08:31:30,010 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1709102098] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:31:30,010 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:31:30,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:31:30,010 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [937356771] [2022-04-15 08:31:30,010 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:31:30,010 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 71 [2022-04-15 08:31:30,010 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:31:30,010 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:31:30,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:30,054 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:31:30,055 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:30,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:31:30,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:31:30,055 INFO L87 Difference]: Start difference. First operand 192 states and 236 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:31:30,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:30,982 INFO L93 Difference]: Finished difference Result 219 states and 281 transitions. [2022-04-15 08:31:30,982 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:31:30,982 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 71 [2022-04-15 08:31:30,982 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:31:30,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:31:30,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-15 08:31:30,997 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:31:30,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2022-04-15 08:31:30,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2022-04-15 08:31:31,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:31,095 INFO L225 Difference]: With dead ends: 219 [2022-04-15 08:31:31,095 INFO L226 Difference]: Without dead ends: 210 [2022-04-15 08:31:31,096 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:31:31,096 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 16 mSDsluCounter, 125 mSDsCounter, 0 mSdLazyCounter, 283 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 162 SdHoareTripleChecker+Invalid, 298 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 283 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 08:31:31,096 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 162 Invalid, 298 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 283 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 08:31:31,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2022-04-15 08:31:31,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 208. [2022-04-15 08:31:31,279 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:31:31,280 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-15 08:31:31,280 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-15 08:31:31,280 INFO L87 Difference]: Start difference. First operand 210 states. Second operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-15 08:31:31,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:31,284 INFO L93 Difference]: Finished difference Result 210 states and 263 transitions. [2022-04-15 08:31:31,284 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 263 transitions. [2022-04-15 08:31:31,285 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:31,285 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:31,285 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-15 08:31:31,285 INFO L87 Difference]: Start difference. First operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-15 08:31:31,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:31,289 INFO L93 Difference]: Finished difference Result 210 states and 263 transitions. [2022-04-15 08:31:31,289 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 263 transitions. [2022-04-15 08:31:31,289 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:31,289 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:31,289 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:31:31,289 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:31:31,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 134 states have internal predecessors, (149), 57 states have call successors, (57), 25 states have call predecessors, (57), 24 states have return successors, (54), 48 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-15 08:31:31,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 260 transitions. [2022-04-15 08:31:31,293 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 260 transitions. Word has length 71 [2022-04-15 08:31:31,293 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:31:31,293 INFO L478 AbstractCegarLoop]: Abstraction has 208 states and 260 transitions. [2022-04-15 08:31:31,293 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:31:31,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 260 transitions. [2022-04-15 08:31:31,630 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:31,630 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 260 transitions. [2022-04-15 08:31:31,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-15 08:31:31,631 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:31:31,631 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:31:31,649 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-15 08:31:31,831 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-15 08:31:31,831 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:31:31,832 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:31:31,832 INFO L85 PathProgramCache]: Analyzing trace with hash -1898774094, now seen corresponding path program 5 times [2022-04-15 08:31:31,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:31,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1600889131] [2022-04-15 08:31:31,832 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:31:31,832 INFO L85 PathProgramCache]: Analyzing trace with hash -1898774094, now seen corresponding path program 6 times [2022-04-15 08:31:31,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:31:31,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [527254369] [2022-04-15 08:31:31,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:31:31,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:31:31,842 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:31:31,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [602420323] [2022-04-15 08:31:31,842 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:31:31,842 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:31,842 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:31:31,867 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:31:31,902 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-15 08:31:31,962 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-15 08:31:31,962 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:31:31,963 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 08:31:31,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:31:31,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:31:32,304 INFO L272 TraceCheckUtils]: 0: Hoare triple {16956#true} call ULTIMATE.init(); {16956#true} is VALID [2022-04-15 08:31:32,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {16956#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {16964#(<= ~counter~0 0)} assume true; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16964#(<= ~counter~0 0)} {16956#true} #82#return; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,305 INFO L272 TraceCheckUtils]: 4: Hoare triple {16964#(<= ~counter~0 0)} call #t~ret7 := main(); {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,306 INFO L290 TraceCheckUtils]: 5: Hoare triple {16964#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,306 INFO L272 TraceCheckUtils]: 6: Hoare triple {16964#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,306 INFO L290 TraceCheckUtils]: 7: Hoare triple {16964#(<= ~counter~0 0)} ~cond := #in~cond; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,306 INFO L290 TraceCheckUtils]: 8: Hoare triple {16964#(<= ~counter~0 0)} assume !(0 == ~cond); {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,307 INFO L290 TraceCheckUtils]: 9: Hoare triple {16964#(<= ~counter~0 0)} assume true; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,307 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16964#(<= ~counter~0 0)} {16964#(<= ~counter~0 0)} #64#return; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,307 INFO L272 TraceCheckUtils]: 11: Hoare triple {16964#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,308 INFO L290 TraceCheckUtils]: 12: Hoare triple {16964#(<= ~counter~0 0)} ~cond := #in~cond; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,308 INFO L290 TraceCheckUtils]: 13: Hoare triple {16964#(<= ~counter~0 0)} assume !(0 == ~cond); {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,308 INFO L290 TraceCheckUtils]: 14: Hoare triple {16964#(<= ~counter~0 0)} assume true; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,309 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16964#(<= ~counter~0 0)} {16964#(<= ~counter~0 0)} #66#return; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,309 INFO L290 TraceCheckUtils]: 16: Hoare triple {16964#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16964#(<= ~counter~0 0)} is VALID [2022-04-15 08:31:32,309 INFO L290 TraceCheckUtils]: 17: Hoare triple {16964#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,310 INFO L290 TraceCheckUtils]: 18: Hoare triple {17013#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,310 INFO L272 TraceCheckUtils]: 19: Hoare triple {17013#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,310 INFO L290 TraceCheckUtils]: 20: Hoare triple {17013#(<= ~counter~0 1)} ~cond := #in~cond; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,311 INFO L290 TraceCheckUtils]: 21: Hoare triple {17013#(<= ~counter~0 1)} assume !(0 == ~cond); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,311 INFO L290 TraceCheckUtils]: 22: Hoare triple {17013#(<= ~counter~0 1)} assume true; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,312 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17013#(<= ~counter~0 1)} {17013#(<= ~counter~0 1)} #68#return; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,312 INFO L272 TraceCheckUtils]: 24: Hoare triple {17013#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,312 INFO L290 TraceCheckUtils]: 25: Hoare triple {17013#(<= ~counter~0 1)} ~cond := #in~cond; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {17013#(<= ~counter~0 1)} assume !(0 == ~cond); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,313 INFO L290 TraceCheckUtils]: 27: Hoare triple {17013#(<= ~counter~0 1)} assume true; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,314 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {17013#(<= ~counter~0 1)} {17013#(<= ~counter~0 1)} #70#return; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,314 INFO L272 TraceCheckUtils]: 29: Hoare triple {17013#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,315 INFO L290 TraceCheckUtils]: 30: Hoare triple {17013#(<= ~counter~0 1)} ~cond := #in~cond; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,315 INFO L290 TraceCheckUtils]: 31: Hoare triple {17013#(<= ~counter~0 1)} assume !(0 == ~cond); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,315 INFO L290 TraceCheckUtils]: 32: Hoare triple {17013#(<= ~counter~0 1)} assume true; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,316 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {17013#(<= ~counter~0 1)} {17013#(<= ~counter~0 1)} #72#return; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,316 INFO L290 TraceCheckUtils]: 34: Hoare triple {17013#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,316 INFO L290 TraceCheckUtils]: 35: Hoare triple {17013#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,317 INFO L290 TraceCheckUtils]: 36: Hoare triple {17013#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,317 INFO L290 TraceCheckUtils]: 37: Hoare triple {17071#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,318 INFO L272 TraceCheckUtils]: 38: Hoare triple {17071#(<= ~counter~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,318 INFO L290 TraceCheckUtils]: 39: Hoare triple {17071#(<= ~counter~0 2)} ~cond := #in~cond; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,318 INFO L290 TraceCheckUtils]: 40: Hoare triple {17071#(<= ~counter~0 2)} assume !(0 == ~cond); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,319 INFO L290 TraceCheckUtils]: 41: Hoare triple {17071#(<= ~counter~0 2)} assume true; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,319 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17071#(<= ~counter~0 2)} {17071#(<= ~counter~0 2)} #68#return; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,320 INFO L272 TraceCheckUtils]: 43: Hoare triple {17071#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,320 INFO L290 TraceCheckUtils]: 44: Hoare triple {17071#(<= ~counter~0 2)} ~cond := #in~cond; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,320 INFO L290 TraceCheckUtils]: 45: Hoare triple {17071#(<= ~counter~0 2)} assume !(0 == ~cond); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,321 INFO L290 TraceCheckUtils]: 46: Hoare triple {17071#(<= ~counter~0 2)} assume true; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,321 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17071#(<= ~counter~0 2)} {17071#(<= ~counter~0 2)} #70#return; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,322 INFO L272 TraceCheckUtils]: 48: Hoare triple {17071#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,322 INFO L290 TraceCheckUtils]: 49: Hoare triple {17071#(<= ~counter~0 2)} ~cond := #in~cond; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,322 INFO L290 TraceCheckUtils]: 50: Hoare triple {17071#(<= ~counter~0 2)} assume !(0 == ~cond); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,323 INFO L290 TraceCheckUtils]: 51: Hoare triple {17071#(<= ~counter~0 2)} assume true; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,323 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17071#(<= ~counter~0 2)} {17071#(<= ~counter~0 2)} #72#return; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,324 INFO L290 TraceCheckUtils]: 53: Hoare triple {17071#(<= ~counter~0 2)} assume !!(~a~0 != ~b~0); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,324 INFO L290 TraceCheckUtils]: 54: Hoare triple {17071#(<= ~counter~0 2)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,324 INFO L290 TraceCheckUtils]: 55: Hoare triple {17071#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,325 INFO L290 TraceCheckUtils]: 56: Hoare triple {17129#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,325 INFO L272 TraceCheckUtils]: 57: Hoare triple {17129#(<= ~counter~0 3)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,325 INFO L290 TraceCheckUtils]: 58: Hoare triple {17129#(<= ~counter~0 3)} ~cond := #in~cond; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,326 INFO L290 TraceCheckUtils]: 59: Hoare triple {17129#(<= ~counter~0 3)} assume !(0 == ~cond); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,326 INFO L290 TraceCheckUtils]: 60: Hoare triple {17129#(<= ~counter~0 3)} assume true; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,327 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17129#(<= ~counter~0 3)} {17129#(<= ~counter~0 3)} #68#return; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,327 INFO L272 TraceCheckUtils]: 62: Hoare triple {17129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,327 INFO L290 TraceCheckUtils]: 63: Hoare triple {17129#(<= ~counter~0 3)} ~cond := #in~cond; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,328 INFO L290 TraceCheckUtils]: 64: Hoare triple {17129#(<= ~counter~0 3)} assume !(0 == ~cond); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,328 INFO L290 TraceCheckUtils]: 65: Hoare triple {17129#(<= ~counter~0 3)} assume true; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,329 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {17129#(<= ~counter~0 3)} {17129#(<= ~counter~0 3)} #70#return; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,329 INFO L272 TraceCheckUtils]: 67: Hoare triple {17129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,330 INFO L290 TraceCheckUtils]: 68: Hoare triple {17129#(<= ~counter~0 3)} ~cond := #in~cond; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,330 INFO L290 TraceCheckUtils]: 69: Hoare triple {17129#(<= ~counter~0 3)} assume !(0 == ~cond); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,330 INFO L290 TraceCheckUtils]: 70: Hoare triple {17129#(<= ~counter~0 3)} assume true; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,331 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {17129#(<= ~counter~0 3)} {17129#(<= ~counter~0 3)} #72#return; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,331 INFO L290 TraceCheckUtils]: 72: Hoare triple {17129#(<= ~counter~0 3)} assume !!(~a~0 != ~b~0); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,331 INFO L290 TraceCheckUtils]: 73: Hoare triple {17129#(<= ~counter~0 3)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,331 INFO L290 TraceCheckUtils]: 74: Hoare triple {17129#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17187#(<= |main_#t~post6| 3)} is VALID [2022-04-15 08:31:32,332 INFO L290 TraceCheckUtils]: 75: Hoare triple {17187#(<= |main_#t~post6| 3)} assume !(#t~post6 < 5);havoc #t~post6; {16957#false} is VALID [2022-04-15 08:31:32,332 INFO L272 TraceCheckUtils]: 76: Hoare triple {16957#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {16957#false} is VALID [2022-04-15 08:31:32,332 INFO L290 TraceCheckUtils]: 77: Hoare triple {16957#false} ~cond := #in~cond; {16957#false} is VALID [2022-04-15 08:31:32,332 INFO L290 TraceCheckUtils]: 78: Hoare triple {16957#false} assume 0 == ~cond; {16957#false} is VALID [2022-04-15 08:31:32,332 INFO L290 TraceCheckUtils]: 79: Hoare triple {16957#false} assume !false; {16957#false} is VALID [2022-04-15 08:31:32,332 INFO L134 CoverageAnalysis]: Checked inductivity of 193 backedges. 18 proven. 135 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-15 08:31:32,332 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:31:32,649 INFO L290 TraceCheckUtils]: 79: Hoare triple {16957#false} assume !false; {16957#false} is VALID [2022-04-15 08:31:32,649 INFO L290 TraceCheckUtils]: 78: Hoare triple {16957#false} assume 0 == ~cond; {16957#false} is VALID [2022-04-15 08:31:32,649 INFO L290 TraceCheckUtils]: 77: Hoare triple {16957#false} ~cond := #in~cond; {16957#false} is VALID [2022-04-15 08:31:32,649 INFO L272 TraceCheckUtils]: 76: Hoare triple {16957#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {16957#false} is VALID [2022-04-15 08:31:32,649 INFO L290 TraceCheckUtils]: 75: Hoare triple {17215#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {16957#false} is VALID [2022-04-15 08:31:32,650 INFO L290 TraceCheckUtils]: 74: Hoare triple {17219#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17215#(< |main_#t~post6| 5)} is VALID [2022-04-15 08:31:32,650 INFO L290 TraceCheckUtils]: 73: Hoare triple {17219#(< ~counter~0 5)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,650 INFO L290 TraceCheckUtils]: 72: Hoare triple {17219#(< ~counter~0 5)} assume !!(~a~0 != ~b~0); {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,651 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {16956#true} {17219#(< ~counter~0 5)} #72#return; {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,651 INFO L290 TraceCheckUtils]: 70: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,651 INFO L290 TraceCheckUtils]: 69: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,651 INFO L290 TraceCheckUtils]: 68: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,651 INFO L272 TraceCheckUtils]: 67: Hoare triple {17219#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,652 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {16956#true} {17219#(< ~counter~0 5)} #70#return; {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,652 INFO L290 TraceCheckUtils]: 65: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,652 INFO L290 TraceCheckUtils]: 64: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,652 INFO L290 TraceCheckUtils]: 63: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,652 INFO L272 TraceCheckUtils]: 62: Hoare triple {17219#(< ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,652 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {16956#true} {17219#(< ~counter~0 5)} #68#return; {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,652 INFO L290 TraceCheckUtils]: 60: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,653 INFO L290 TraceCheckUtils]: 59: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,653 INFO L290 TraceCheckUtils]: 58: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,653 INFO L272 TraceCheckUtils]: 57: Hoare triple {17219#(< ~counter~0 5)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,653 INFO L290 TraceCheckUtils]: 56: Hoare triple {17219#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,654 INFO L290 TraceCheckUtils]: 55: Hoare triple {17129#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17219#(< ~counter~0 5)} is VALID [2022-04-15 08:31:32,654 INFO L290 TraceCheckUtils]: 54: Hoare triple {17129#(<= ~counter~0 3)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,654 INFO L290 TraceCheckUtils]: 53: Hoare triple {17129#(<= ~counter~0 3)} assume !!(~a~0 != ~b~0); {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,655 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {16956#true} {17129#(<= ~counter~0 3)} #72#return; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,655 INFO L290 TraceCheckUtils]: 51: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,655 INFO L290 TraceCheckUtils]: 50: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,655 INFO L290 TraceCheckUtils]: 49: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,655 INFO L272 TraceCheckUtils]: 48: Hoare triple {17129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,655 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16956#true} {17129#(<= ~counter~0 3)} #70#return; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,656 INFO L290 TraceCheckUtils]: 46: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L290 TraceCheckUtils]: 45: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L290 TraceCheckUtils]: 44: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L272 TraceCheckUtils]: 43: Hoare triple {17129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {16956#true} {17129#(<= ~counter~0 3)} #68#return; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,656 INFO L290 TraceCheckUtils]: 41: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L290 TraceCheckUtils]: 40: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L290 TraceCheckUtils]: 39: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,656 INFO L272 TraceCheckUtils]: 38: Hoare triple {17129#(<= ~counter~0 3)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,657 INFO L290 TraceCheckUtils]: 37: Hoare triple {17129#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,657 INFO L290 TraceCheckUtils]: 36: Hoare triple {17071#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17129#(<= ~counter~0 3)} is VALID [2022-04-15 08:31:32,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {17071#(<= ~counter~0 2)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,658 INFO L290 TraceCheckUtils]: 34: Hoare triple {17071#(<= ~counter~0 2)} assume !!(~a~0 != ~b~0); {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,658 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {16956#true} {17071#(<= ~counter~0 2)} #72#return; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,658 INFO L290 TraceCheckUtils]: 32: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,658 INFO L290 TraceCheckUtils]: 31: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,658 INFO L290 TraceCheckUtils]: 30: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,658 INFO L272 TraceCheckUtils]: 29: Hoare triple {17071#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,659 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16956#true} {17071#(<= ~counter~0 2)} #70#return; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,659 INFO L290 TraceCheckUtils]: 27: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,659 INFO L290 TraceCheckUtils]: 26: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,659 INFO L290 TraceCheckUtils]: 25: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,659 INFO L272 TraceCheckUtils]: 24: Hoare triple {17071#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,660 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16956#true} {17071#(<= ~counter~0 2)} #68#return; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,660 INFO L290 TraceCheckUtils]: 22: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,660 INFO L290 TraceCheckUtils]: 21: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,660 INFO L290 TraceCheckUtils]: 20: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,660 INFO L272 TraceCheckUtils]: 19: Hoare triple {17071#(<= ~counter~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,660 INFO L290 TraceCheckUtils]: 18: Hoare triple {17071#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,661 INFO L290 TraceCheckUtils]: 17: Hoare triple {17013#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17071#(<= ~counter~0 2)} is VALID [2022-04-15 08:31:32,661 INFO L290 TraceCheckUtils]: 16: Hoare triple {17013#(<= ~counter~0 1)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,661 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16956#true} {17013#(<= ~counter~0 1)} #66#return; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,661 INFO L290 TraceCheckUtils]: 12: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,661 INFO L272 TraceCheckUtils]: 11: Hoare triple {17013#(<= ~counter~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,662 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16956#true} {17013#(<= ~counter~0 1)} #64#return; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,662 INFO L290 TraceCheckUtils]: 9: Hoare triple {16956#true} assume true; {16956#true} is VALID [2022-04-15 08:31:32,662 INFO L290 TraceCheckUtils]: 8: Hoare triple {16956#true} assume !(0 == ~cond); {16956#true} is VALID [2022-04-15 08:31:32,662 INFO L290 TraceCheckUtils]: 7: Hoare triple {16956#true} ~cond := #in~cond; {16956#true} is VALID [2022-04-15 08:31:32,662 INFO L272 TraceCheckUtils]: 6: Hoare triple {17013#(<= ~counter~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16956#true} is VALID [2022-04-15 08:31:32,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {17013#(<= ~counter~0 1)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,663 INFO L272 TraceCheckUtils]: 4: Hoare triple {17013#(<= ~counter~0 1)} call #t~ret7 := main(); {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,663 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17013#(<= ~counter~0 1)} {16956#true} #82#return; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,663 INFO L290 TraceCheckUtils]: 2: Hoare triple {17013#(<= ~counter~0 1)} assume true; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,664 INFO L290 TraceCheckUtils]: 1: Hoare triple {16956#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {17013#(<= ~counter~0 1)} is VALID [2022-04-15 08:31:32,664 INFO L272 TraceCheckUtils]: 0: Hoare triple {16956#true} call ULTIMATE.init(); {16956#true} is VALID [2022-04-15 08:31:32,664 INFO L134 CoverageAnalysis]: Checked inductivity of 193 backedges. 18 proven. 27 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-15 08:31:32,664 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:31:32,664 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [527254369] [2022-04-15 08:31:32,664 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:31:32,664 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [602420323] [2022-04-15 08:31:32,664 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [602420323] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:31:32,664 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:31:32,664 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-15 08:31:32,664 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:31:32,665 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1600889131] [2022-04-15 08:31:32,665 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1600889131] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:31:32,665 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:31:32,665 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 08:31:32,665 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [410473291] [2022-04-15 08:31:32,665 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:31:32,665 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) Word has length 80 [2022-04-15 08:31:32,665 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:31:32,665 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-15 08:31:32,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:32,711 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 08:31:32,711 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:32,711 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 08:31:32,711 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:31:32,711 INFO L87 Difference]: Start difference. First operand 208 states and 260 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-15 08:31:33,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:33,090 INFO L93 Difference]: Finished difference Result 277 states and 329 transitions. [2022-04-15 08:31:33,090 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 08:31:33,090 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) Word has length 80 [2022-04-15 08:31:33,090 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:31:33,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-15 08:31:33,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-15 08:31:33,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-15 08:31:33,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-15 08:31:33,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-15 08:31:33,208 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:33,212 INFO L225 Difference]: With dead ends: 277 [2022-04-15 08:31:33,212 INFO L226 Difference]: Without dead ends: 250 [2022-04-15 08:31:33,213 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 162 GetRequests, 151 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-15 08:31:33,213 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 10 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:31:33,213 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 163 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:31:33,214 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 250 states. [2022-04-15 08:31:33,378 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 250 to 229. [2022-04-15 08:31:33,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:31:33,379 INFO L82 GeneralOperation]: Start isEquivalent. First operand 250 states. Second operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-15 08:31:33,379 INFO L74 IsIncluded]: Start isIncluded. First operand 250 states. Second operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-15 08:31:33,379 INFO L87 Difference]: Start difference. First operand 250 states. Second operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-15 08:31:33,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:33,383 INFO L93 Difference]: Finished difference Result 250 states and 294 transitions. [2022-04-15 08:31:33,383 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 294 transitions. [2022-04-15 08:31:33,384 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:33,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:33,384 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) Second operand 250 states. [2022-04-15 08:31:33,384 INFO L87 Difference]: Start difference. First operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) Second operand 250 states. [2022-04-15 08:31:33,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:33,388 INFO L93 Difference]: Finished difference Result 250 states and 294 transitions. [2022-04-15 08:31:33,388 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 294 transitions. [2022-04-15 08:31:33,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:33,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:33,389 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:31:33,389 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:31:33,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 146 states have (on average 1.143835616438356) internal successors, (167), 153 states have internal predecessors, (167), 52 states have call successors, (52), 31 states have call predecessors, (52), 30 states have return successors, (49), 44 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-15 08:31:33,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 268 transitions. [2022-04-15 08:31:33,393 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 268 transitions. Word has length 80 [2022-04-15 08:31:33,393 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:31:33,393 INFO L478 AbstractCegarLoop]: Abstraction has 229 states and 268 transitions. [2022-04-15 08:31:33,393 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (14), 6 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-15 08:31:33,394 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 268 transitions. [2022-04-15 08:31:33,786 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 268 edges. 268 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:33,786 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 268 transitions. [2022-04-15 08:31:33,787 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-15 08:31:33,787 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:31:33,787 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:31:33,803 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Ended with exit code 0 [2022-04-15 08:31:33,987 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-15 08:31:33,988 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:31:33,988 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:31:33,988 INFO L85 PathProgramCache]: Analyzing trace with hash 629296923, now seen corresponding path program 7 times [2022-04-15 08:31:33,988 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:33,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2101306269] [2022-04-15 08:31:33,989 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:31:33,989 INFO L85 PathProgramCache]: Analyzing trace with hash 629296923, now seen corresponding path program 8 times [2022-04-15 08:31:33,989 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:31:33,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [835311450] [2022-04-15 08:31:33,989 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:31:33,989 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:31:33,997 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:31:33,998 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2027396659] [2022-04-15 08:31:33,998 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:31:33,998 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:33,998 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:31:34,000 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:31:34,002 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-15 08:31:34,053 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:31:34,053 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:31:34,055 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-15 08:31:34,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:31:34,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:31:34,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {18962#true} call ULTIMATE.init(); {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {18962#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18962#true} {18962#true} #82#return; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L272 TraceCheckUtils]: 4: Hoare triple {18962#true} call #t~ret7 := main(); {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {18962#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L272 TraceCheckUtils]: 6: Hoare triple {18962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 7: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 8: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 9: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18962#true} {18962#true} #64#return; {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L272 TraceCheckUtils]: 11: Hoare triple {18962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,789 INFO L290 TraceCheckUtils]: 12: Hoare triple {18962#true} ~cond := #in~cond; {19003#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:31:34,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {19003#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {19007#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:31:34,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {19007#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {19007#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:31:34,790 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19007#(not (= |assume_abort_if_not_#in~cond| 0))} {18962#true} #66#return; {19014#(<= 1 main_~y~0)} is VALID [2022-04-15 08:31:34,791 INFO L290 TraceCheckUtils]: 16: Hoare triple {19014#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,791 INFO L290 TraceCheckUtils]: 17: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,791 INFO L290 TraceCheckUtils]: 18: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,791 INFO L272 TraceCheckUtils]: 19: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,791 INFO L290 TraceCheckUtils]: 20: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,791 INFO L290 TraceCheckUtils]: 21: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,791 INFO L290 TraceCheckUtils]: 22: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,792 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18962#true} {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,792 INFO L272 TraceCheckUtils]: 24: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,792 INFO L290 TraceCheckUtils]: 25: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,792 INFO L290 TraceCheckUtils]: 26: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,792 INFO L290 TraceCheckUtils]: 27: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,792 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18962#true} {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,792 INFO L272 TraceCheckUtils]: 29: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,793 INFO L290 TraceCheckUtils]: 30: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,793 INFO L290 TraceCheckUtils]: 31: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,793 INFO L290 TraceCheckUtils]: 32: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,793 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {18962#true} {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,793 INFO L290 TraceCheckUtils]: 34: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,794 INFO L290 TraceCheckUtils]: 35: Hoare triple {19018#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,794 INFO L290 TraceCheckUtils]: 36: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,794 INFO L290 TraceCheckUtils]: 37: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,794 INFO L272 TraceCheckUtils]: 38: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L290 TraceCheckUtils]: 39: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L290 TraceCheckUtils]: 40: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L290 TraceCheckUtils]: 41: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {18962#true} {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #68#return; {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,795 INFO L272 TraceCheckUtils]: 43: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L290 TraceCheckUtils]: 44: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L290 TraceCheckUtils]: 45: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,795 INFO L290 TraceCheckUtils]: 46: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,796 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18962#true} {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #70#return; {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,796 INFO L272 TraceCheckUtils]: 48: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,796 INFO L290 TraceCheckUtils]: 49: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,796 INFO L290 TraceCheckUtils]: 50: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,796 INFO L290 TraceCheckUtils]: 51: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,796 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {18962#true} {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #72#return; {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,796 INFO L290 TraceCheckUtils]: 53: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~a~0 != ~b~0); {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:31:34,797 INFO L290 TraceCheckUtils]: 54: Hoare triple {19076#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,798 INFO L290 TraceCheckUtils]: 55: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,798 INFO L290 TraceCheckUtils]: 56: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 5);havoc #t~post6; {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,798 INFO L272 TraceCheckUtils]: 57: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,798 INFO L290 TraceCheckUtils]: 58: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,798 INFO L290 TraceCheckUtils]: 59: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,798 INFO L290 TraceCheckUtils]: 60: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,798 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {18962#true} {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #68#return; {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,799 INFO L272 TraceCheckUtils]: 62: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L290 TraceCheckUtils]: 63: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L290 TraceCheckUtils]: 64: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L290 TraceCheckUtils]: 65: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {18962#true} {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #70#return; {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,799 INFO L272 TraceCheckUtils]: 67: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L290 TraceCheckUtils]: 68: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L290 TraceCheckUtils]: 69: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,799 INFO L290 TraceCheckUtils]: 70: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,800 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18962#true} {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #72#return; {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,800 INFO L290 TraceCheckUtils]: 72: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~a~0 != ~b~0); {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:31:34,801 INFO L290 TraceCheckUtils]: 73: Hoare triple {19134#(and (= (+ main_~s~0 main_~r~0) (* (- 1) main_~s~0)) (= main_~s~0 1) (= (+ main_~p~0 (* main_~q~0 2)) 1) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,801 INFO L290 TraceCheckUtils]: 74: Hoare triple {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,801 INFO L290 TraceCheckUtils]: 75: Hoare triple {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,801 INFO L272 TraceCheckUtils]: 76: Hoare triple {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:34,801 INFO L290 TraceCheckUtils]: 77: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:34,801 INFO L290 TraceCheckUtils]: 78: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:34,801 INFO L290 TraceCheckUtils]: 79: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:34,802 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18962#true} {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} #68#return; {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:34,802 INFO L272 TraceCheckUtils]: 81: Hoare triple {19192#(and (= (+ main_~a~0 main_~y~0) (+ main_~x~0 (* (- 2) main_~y~0))) (= main_~r~0 (- 3)) (<= 1 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19217#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:34,802 INFO L290 TraceCheckUtils]: 82: Hoare triple {19217#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19221#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:34,803 INFO L290 TraceCheckUtils]: 83: Hoare triple {19221#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18963#false} is VALID [2022-04-15 08:31:34,803 INFO L290 TraceCheckUtils]: 84: Hoare triple {18963#false} assume !false; {18963#false} is VALID [2022-04-15 08:31:34,803 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 23 proven. 33 refuted. 0 times theorem prover too weak. 181 trivial. 0 not checked. [2022-04-15 08:31:34,803 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:31:35,131 INFO L290 TraceCheckUtils]: 84: Hoare triple {18963#false} assume !false; {18963#false} is VALID [2022-04-15 08:31:35,131 INFO L290 TraceCheckUtils]: 83: Hoare triple {19221#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18963#false} is VALID [2022-04-15 08:31:35,132 INFO L290 TraceCheckUtils]: 82: Hoare triple {19217#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19221#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:35,132 INFO L272 TraceCheckUtils]: 81: Hoare triple {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19217#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:35,132 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18962#true} {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:35,132 INFO L290 TraceCheckUtils]: 79: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,133 INFO L290 TraceCheckUtils]: 78: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,133 INFO L290 TraceCheckUtils]: 77: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,133 INFO L272 TraceCheckUtils]: 76: Hoare triple {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,133 INFO L290 TraceCheckUtils]: 75: Hoare triple {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:35,133 INFO L290 TraceCheckUtils]: 74: Hoare triple {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:35,254 INFO L290 TraceCheckUtils]: 73: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19237#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:35,254 INFO L290 TraceCheckUtils]: 72: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,255 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18962#true} {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,255 INFO L290 TraceCheckUtils]: 70: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,255 INFO L290 TraceCheckUtils]: 69: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,255 INFO L290 TraceCheckUtils]: 68: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,255 INFO L272 TraceCheckUtils]: 67: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {18962#true} {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #70#return; {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,256 INFO L290 TraceCheckUtils]: 65: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L290 TraceCheckUtils]: 64: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L290 TraceCheckUtils]: 63: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L272 TraceCheckUtils]: 62: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {18962#true} {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #68#return; {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,256 INFO L290 TraceCheckUtils]: 60: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L290 TraceCheckUtils]: 59: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,256 INFO L290 TraceCheckUtils]: 58: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,257 INFO L272 TraceCheckUtils]: 57: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,257 INFO L290 TraceCheckUtils]: 56: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(#t~post6 < 5);havoc #t~post6; {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,257 INFO L290 TraceCheckUtils]: 55: Hoare triple {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,362 INFO L290 TraceCheckUtils]: 54: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19262#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:35,362 INFO L290 TraceCheckUtils]: 53: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} assume !!(~a~0 != ~b~0); {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-15 08:31:35,363 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {18962#true} {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #72#return; {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-15 08:31:35,363 INFO L290 TraceCheckUtils]: 51: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L290 TraceCheckUtils]: 50: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L290 TraceCheckUtils]: 49: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L272 TraceCheckUtils]: 48: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18962#true} {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #70#return; {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-15 08:31:35,363 INFO L290 TraceCheckUtils]: 46: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L290 TraceCheckUtils]: 45: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L290 TraceCheckUtils]: 44: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,363 INFO L272 TraceCheckUtils]: 43: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,364 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {18962#true} {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #68#return; {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-15 08:31:35,364 INFO L290 TraceCheckUtils]: 41: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:35,364 INFO L290 TraceCheckUtils]: 40: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:35,364 INFO L290 TraceCheckUtils]: 39: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:35,364 INFO L272 TraceCheckUtils]: 38: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:35,364 INFO L290 TraceCheckUtils]: 37: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} assume !!(#t~post6 < 5);havoc #t~post6; {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-15 08:31:35,364 INFO L290 TraceCheckUtils]: 36: Hoare triple {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is VALID [2022-04-15 08:31:37,366 WARN L290 TraceCheckUtils]: 35: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {19320#(= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) (+ (* (- 2) main_~b~0) main_~a~0))} is UNKNOWN [2022-04-15 08:31:37,367 INFO L290 TraceCheckUtils]: 34: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} assume !!(~a~0 != ~b~0); {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,367 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {18962#true} {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #72#return; {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,367 INFO L290 TraceCheckUtils]: 32: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:37,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:37,367 INFO L290 TraceCheckUtils]: 30: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:37,367 INFO L272 TraceCheckUtils]: 29: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18962#true} {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #70#return; {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,368 INFO L290 TraceCheckUtils]: 27: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L290 TraceCheckUtils]: 26: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L290 TraceCheckUtils]: 25: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L272 TraceCheckUtils]: 24: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18962#true} {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #68#return; {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,368 INFO L290 TraceCheckUtils]: 22: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L290 TraceCheckUtils]: 21: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L290 TraceCheckUtils]: 20: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:37,368 INFO L272 TraceCheckUtils]: 19: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:37,369 INFO L290 TraceCheckUtils]: 18: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} assume !!(#t~post6 < 5);havoc #t~post6; {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,369 INFO L290 TraceCheckUtils]: 17: Hoare triple {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,369 INFO L290 TraceCheckUtils]: 16: Hoare triple {18962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19378#(= (+ (* main_~x~0 (+ (* main_~q~0 (- 3)) main_~p~0)) (* main_~y~0 (+ main_~r~0 (* main_~s~0 (- 3))))) (+ (* main_~b~0 (- 3)) main_~a~0))} is VALID [2022-04-15 08:31:37,369 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18962#true} {18962#true} #66#return; {18962#true} is VALID [2022-04-15 08:31:37,369 INFO L290 TraceCheckUtils]: 14: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:37,369 INFO L290 TraceCheckUtils]: 13: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:37,369 INFO L290 TraceCheckUtils]: 12: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L272 TraceCheckUtils]: 11: Hoare triple {18962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18962#true} {18962#true} #64#return; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {18962#true} assume !(0 == ~cond); {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {18962#true} ~cond := #in~cond; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L272 TraceCheckUtils]: 6: Hoare triple {18962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L290 TraceCheckUtils]: 5: Hoare triple {18962#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L272 TraceCheckUtils]: 4: Hoare triple {18962#true} call #t~ret7 := main(); {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18962#true} {18962#true} #82#return; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L290 TraceCheckUtils]: 2: Hoare triple {18962#true} assume true; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L290 TraceCheckUtils]: 1: Hoare triple {18962#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L272 TraceCheckUtils]: 0: Hoare triple {18962#true} call ULTIMATE.init(); {18962#true} is VALID [2022-04-15 08:31:37,370 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 20 proven. 33 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-15 08:31:37,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:31:37,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [835311450] [2022-04-15 08:31:37,371 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:31:37,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2027396659] [2022-04-15 08:31:37,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2027396659] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:31:37,371 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:31:37,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 15 [2022-04-15 08:31:37,371 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:31:37,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2101306269] [2022-04-15 08:31:37,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2101306269] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:31:37,371 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:31:37,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 08:31:37,371 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1930575668] [2022-04-15 08:31:37,371 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:31:37,372 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-15 08:31:37,372 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:31:37,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:37,410 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-15 08:31:37,410 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 08:31:37,410 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:37,410 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 08:31:37,411 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-15 08:31:37,411 INFO L87 Difference]: Start difference. First operand 229 states and 268 transitions. Second operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:39,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:39,096 INFO L93 Difference]: Finished difference Result 256 states and 307 transitions. [2022-04-15 08:31:39,096 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 08:31:39,096 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-15 08:31:39,096 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:31:39,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:39,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-15 08:31:39,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:39,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-15 08:31:39,101 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-15 08:31:39,217 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:39,221 INFO L225 Difference]: With dead ends: 256 [2022-04-15 08:31:39,221 INFO L226 Difference]: Without dead ends: 254 [2022-04-15 08:31:39,222 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 155 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=52, Invalid=220, Unknown=0, NotChecked=0, Total=272 [2022-04-15 08:31:39,222 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 25 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 470 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 277 SdHoareTripleChecker+Invalid, 493 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 470 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 08:31:39,222 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 277 Invalid, 493 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 470 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-15 08:31:39,223 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 254 states. [2022-04-15 08:31:39,430 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 254 to 238. [2022-04-15 08:31:39,430 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:31:39,431 INFO L82 GeneralOperation]: Start isEquivalent. First operand 254 states. Second operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-15 08:31:39,432 INFO L74 IsIncluded]: Start isIncluded. First operand 254 states. Second operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-15 08:31:39,432 INFO L87 Difference]: Start difference. First operand 254 states. Second operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-15 08:31:39,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:39,437 INFO L93 Difference]: Finished difference Result 254 states and 305 transitions. [2022-04-15 08:31:39,437 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 305 transitions. [2022-04-15 08:31:39,437 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:39,437 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:39,438 INFO L74 IsIncluded]: Start isIncluded. First operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) Second operand 254 states. [2022-04-15 08:31:39,438 INFO L87 Difference]: Start difference. First operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) Second operand 254 states. [2022-04-15 08:31:39,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:39,442 INFO L93 Difference]: Finished difference Result 254 states and 305 transitions. [2022-04-15 08:31:39,442 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 305 transitions. [2022-04-15 08:31:39,442 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:39,442 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:39,442 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:31:39,442 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:31:39,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 238 states, 151 states have (on average 1.1456953642384107) internal successors, (173), 158 states have internal predecessors, (173), 55 states have call successors, (55), 32 states have call predecessors, (55), 31 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-15 08:31:39,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 238 states to 238 states and 280 transitions. [2022-04-15 08:31:39,447 INFO L78 Accepts]: Start accepts. Automaton has 238 states and 280 transitions. Word has length 85 [2022-04-15 08:31:39,447 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:31:39,447 INFO L478 AbstractCegarLoop]: Abstraction has 238 states and 280 transitions. [2022-04-15 08:31:39,447 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:39,447 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 238 states and 280 transitions. [2022-04-15 08:31:39,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 280 edges. 280 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:39,870 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 280 transitions. [2022-04-15 08:31:39,871 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-15 08:31:39,871 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:31:39,871 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:31:39,890 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-15 08:31:40,071 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:40,072 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:31:40,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:31:40,072 INFO L85 PathProgramCache]: Analyzing trace with hash 1330896797, now seen corresponding path program 7 times [2022-04-15 08:31:40,072 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:40,072 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1257524277] [2022-04-15 08:31:40,073 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:31:40,073 INFO L85 PathProgramCache]: Analyzing trace with hash 1330896797, now seen corresponding path program 8 times [2022-04-15 08:31:40,073 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:31:40,073 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [416535406] [2022-04-15 08:31:40,073 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:31:40,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:31:40,082 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:31:40,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [668796828] [2022-04-15 08:31:40,082 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:31:40,082 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:40,082 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:31:40,085 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:31:40,087 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-15 08:31:40,201 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:31:40,202 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:31:40,203 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-15 08:31:40,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:31:40,213 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:31:40,740 INFO L272 TraceCheckUtils]: 0: Hoare triple {20986#true} call ULTIMATE.init(); {20986#true} is VALID [2022-04-15 08:31:40,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {20986#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {20986#true} is VALID [2022-04-15 08:31:40,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,740 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20986#true} {20986#true} #82#return; {20986#true} is VALID [2022-04-15 08:31:40,740 INFO L272 TraceCheckUtils]: 4: Hoare triple {20986#true} call #t~ret7 := main(); {20986#true} is VALID [2022-04-15 08:31:40,740 INFO L290 TraceCheckUtils]: 5: Hoare triple {20986#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L272 TraceCheckUtils]: 6: Hoare triple {20986#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 8: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 9: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20986#true} {20986#true} #64#return; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L272 TraceCheckUtils]: 11: Hoare triple {20986#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 12: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 13: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 14: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20986#true} {20986#true} #66#return; {20986#true} is VALID [2022-04-15 08:31:40,741 INFO L290 TraceCheckUtils]: 16: Hoare triple {20986#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,742 INFO L290 TraceCheckUtils]: 17: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,742 INFO L290 TraceCheckUtils]: 18: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,742 INFO L272 TraceCheckUtils]: 19: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,742 INFO L290 TraceCheckUtils]: 20: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,742 INFO L290 TraceCheckUtils]: 21: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,742 INFO L290 TraceCheckUtils]: 22: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,742 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20986#true} {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,742 INFO L272 TraceCheckUtils]: 24: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L290 TraceCheckUtils]: 25: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L290 TraceCheckUtils]: 26: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L290 TraceCheckUtils]: 27: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {20986#true} {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,743 INFO L272 TraceCheckUtils]: 29: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L290 TraceCheckUtils]: 30: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L290 TraceCheckUtils]: 31: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,743 INFO L290 TraceCheckUtils]: 32: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,744 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {20986#true} {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,744 INFO L290 TraceCheckUtils]: 34: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:31:40,744 INFO L290 TraceCheckUtils]: 35: Hoare triple {21039#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,744 INFO L290 TraceCheckUtils]: 36: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,745 INFO L290 TraceCheckUtils]: 37: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,745 INFO L272 TraceCheckUtils]: 38: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,745 INFO L290 TraceCheckUtils]: 39: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,745 INFO L290 TraceCheckUtils]: 40: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,745 INFO L290 TraceCheckUtils]: 41: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,745 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20986#true} {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #68#return; {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,745 INFO L272 TraceCheckUtils]: 43: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L290 TraceCheckUtils]: 44: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L290 TraceCheckUtils]: 45: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L290 TraceCheckUtils]: 46: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20986#true} {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #70#return; {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,746 INFO L272 TraceCheckUtils]: 48: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L290 TraceCheckUtils]: 49: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L290 TraceCheckUtils]: 50: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L290 TraceCheckUtils]: 51: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,746 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20986#true} {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #72#return; {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,747 INFO L290 TraceCheckUtils]: 53: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-15 08:31:40,747 INFO L290 TraceCheckUtils]: 54: Hoare triple {21097#(and (< main_~b~0 main_~x~0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~a~0) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,748 INFO L290 TraceCheckUtils]: 55: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,748 INFO L290 TraceCheckUtils]: 56: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} assume !!(#t~post6 < 5);havoc #t~post6; {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,748 INFO L272 TraceCheckUtils]: 57: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,748 INFO L290 TraceCheckUtils]: 58: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,748 INFO L290 TraceCheckUtils]: 59: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,748 INFO L290 TraceCheckUtils]: 60: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {20986#true} {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #68#return; {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,749 INFO L272 TraceCheckUtils]: 62: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L290 TraceCheckUtils]: 63: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L290 TraceCheckUtils]: 64: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L290 TraceCheckUtils]: 65: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {20986#true} {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #70#return; {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,749 INFO L272 TraceCheckUtils]: 67: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L290 TraceCheckUtils]: 68: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L290 TraceCheckUtils]: 69: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,749 INFO L290 TraceCheckUtils]: 70: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,750 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20986#true} {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} #72#return; {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,750 INFO L290 TraceCheckUtils]: 72: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} assume !!(~a~0 != ~b~0); {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} is VALID [2022-04-15 08:31:40,751 INFO L290 TraceCheckUtils]: 73: Hoare triple {21155#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (not (< main_~y~0 main_~a~0)) (= main_~q~0 (+ (* (- 2) main_~p~0) 1)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~r~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-15 08:31:40,751 INFO L290 TraceCheckUtils]: 74: Hoare triple {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-15 08:31:40,752 INFO L290 TraceCheckUtils]: 75: Hoare triple {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} assume !!(#t~post6 < 5);havoc #t~post6; {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-15 08:31:40,752 INFO L272 TraceCheckUtils]: 76: Hoare triple {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:40,752 INFO L290 TraceCheckUtils]: 77: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:40,752 INFO L290 TraceCheckUtils]: 78: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:40,752 INFO L290 TraceCheckUtils]: 79: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:40,752 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {20986#true} {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} #68#return; {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} is VALID [2022-04-15 08:31:40,753 INFO L272 TraceCheckUtils]: 81: Hoare triple {21213#(and (not (< (* main_~y~0 2) main_~x~0)) (< main_~y~0 main_~x~0) (= (+ (* (- 1) main_~a~0) main_~x~0 (* (- 1) main_~y~0)) (+ (* (- 1) main_~x~0) (* main_~y~0 2))) (= main_~r~0 (- 3)) (= (+ (* (- 1) main_~p~0) 1) (- 1)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:40,753 INFO L290 TraceCheckUtils]: 82: Hoare triple {21238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:40,753 INFO L290 TraceCheckUtils]: 83: Hoare triple {21242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20987#false} is VALID [2022-04-15 08:31:40,753 INFO L290 TraceCheckUtils]: 84: Hoare triple {20987#false} assume !false; {20987#false} is VALID [2022-04-15 08:31:40,754 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 20 proven. 33 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-15 08:31:40,754 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:31:41,138 INFO L290 TraceCheckUtils]: 84: Hoare triple {20987#false} assume !false; {20987#false} is VALID [2022-04-15 08:31:41,138 INFO L290 TraceCheckUtils]: 83: Hoare triple {21242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20987#false} is VALID [2022-04-15 08:31:41,139 INFO L290 TraceCheckUtils]: 82: Hoare triple {21238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:31:41,139 INFO L272 TraceCheckUtils]: 81: Hoare triple {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:31:41,140 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {20986#true} {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:41,140 INFO L290 TraceCheckUtils]: 79: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,140 INFO L290 TraceCheckUtils]: 78: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,140 INFO L290 TraceCheckUtils]: 77: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,140 INFO L272 TraceCheckUtils]: 76: Hoare triple {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,141 INFO L290 TraceCheckUtils]: 75: Hoare triple {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:41,141 INFO L290 TraceCheckUtils]: 74: Hoare triple {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:41,264 INFO L290 TraceCheckUtils]: 73: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21258#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:31:41,265 INFO L290 TraceCheckUtils]: 72: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,265 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20986#true} {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,265 INFO L290 TraceCheckUtils]: 70: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,265 INFO L290 TraceCheckUtils]: 69: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,265 INFO L290 TraceCheckUtils]: 68: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,266 INFO L272 TraceCheckUtils]: 67: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,266 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {20986#true} {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #70#return; {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,266 INFO L290 TraceCheckUtils]: 65: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,266 INFO L290 TraceCheckUtils]: 64: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,266 INFO L290 TraceCheckUtils]: 63: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,266 INFO L272 TraceCheckUtils]: 62: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,267 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {20986#true} {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #68#return; {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,267 INFO L290 TraceCheckUtils]: 60: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,267 INFO L290 TraceCheckUtils]: 59: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,267 INFO L290 TraceCheckUtils]: 58: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,267 INFO L272 TraceCheckUtils]: 57: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,267 INFO L290 TraceCheckUtils]: 56: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(#t~post6 < 5);havoc #t~post6; {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,268 INFO L290 TraceCheckUtils]: 55: Hoare triple {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,360 INFO L290 TraceCheckUtils]: 54: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {21283#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:31:41,361 INFO L290 TraceCheckUtils]: 53: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} assume !!(~a~0 != ~b~0); {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-15 08:31:41,362 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20986#true} {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #72#return; {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-15 08:31:41,362 INFO L290 TraceCheckUtils]: 51: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,362 INFO L290 TraceCheckUtils]: 50: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,362 INFO L290 TraceCheckUtils]: 49: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,362 INFO L272 TraceCheckUtils]: 48: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,362 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20986#true} {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #70#return; {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-15 08:31:41,362 INFO L290 TraceCheckUtils]: 46: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L290 TraceCheckUtils]: 45: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L290 TraceCheckUtils]: 44: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L272 TraceCheckUtils]: 43: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20986#true} {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #68#return; {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-15 08:31:41,363 INFO L290 TraceCheckUtils]: 41: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L290 TraceCheckUtils]: 40: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:41,363 INFO L272 TraceCheckUtils]: 38: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:41,364 INFO L290 TraceCheckUtils]: 37: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} assume !!(#t~post6 < 5);havoc #t~post6; {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-15 08:31:41,364 INFO L290 TraceCheckUtils]: 36: Hoare triple {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is VALID [2022-04-15 08:31:43,366 WARN L290 TraceCheckUtils]: 35: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {21341#(or (< main_~b~0 main_~a~0) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* main_~a~0 2) (* (- 1) main_~b~0))))} is UNKNOWN [2022-04-15 08:31:43,367 INFO L290 TraceCheckUtils]: 34: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} assume !!(~a~0 != ~b~0); {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,367 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {20986#true} {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #72#return; {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,367 INFO L290 TraceCheckUtils]: 32: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:43,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:43,367 INFO L290 TraceCheckUtils]: 30: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:43,368 INFO L272 TraceCheckUtils]: 29: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:43,368 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {20986#true} {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #70#return; {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,368 INFO L290 TraceCheckUtils]: 27: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:43,368 INFO L290 TraceCheckUtils]: 26: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:43,368 INFO L290 TraceCheckUtils]: 25: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:43,368 INFO L272 TraceCheckUtils]: 24: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:43,369 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20986#true} {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #68#return; {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,369 INFO L290 TraceCheckUtils]: 22: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:43,369 INFO L290 TraceCheckUtils]: 21: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:43,369 INFO L290 TraceCheckUtils]: 20: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:43,369 INFO L272 TraceCheckUtils]: 19: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:43,370 INFO L290 TraceCheckUtils]: 18: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} assume !!(#t~post6 < 5);havoc #t~post6; {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,370 INFO L290 TraceCheckUtils]: 17: Hoare triple {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,370 INFO L290 TraceCheckUtils]: 16: Hoare triple {20986#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21399#(or (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ (* main_~y~0 (+ (* main_~s~0 (- 3)) (* main_~r~0 2))) (* main_~x~0 (+ (* main_~p~0 2) (* main_~q~0 (- 3))))) (+ (* main_~b~0 (- 3)) (* main_~a~0 2))))} is VALID [2022-04-15 08:31:43,371 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20986#true} {20986#true} #66#return; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 12: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L272 TraceCheckUtils]: 11: Hoare triple {20986#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20986#true} {20986#true} #64#return; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 9: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 8: Hoare triple {20986#true} assume !(0 == ~cond); {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 7: Hoare triple {20986#true} ~cond := #in~cond; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L272 TraceCheckUtils]: 6: Hoare triple {20986#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {20986#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {20986#true} call #t~ret7 := main(); {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20986#true} {20986#true} #82#return; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {20986#true} assume true; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {20986#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {20986#true} is VALID [2022-04-15 08:31:43,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {20986#true} call ULTIMATE.init(); {20986#true} is VALID [2022-04-15 08:31:43,372 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 20 proven. 33 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-15 08:31:43,372 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:31:43,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [416535406] [2022-04-15 08:31:43,372 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:31:43,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [668796828] [2022-04-15 08:31:43,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [668796828] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:31:43,372 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:31:43,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-15 08:31:43,372 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:31:43,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1257524277] [2022-04-15 08:31:43,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1257524277] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:31:43,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:31:43,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:31:43,373 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [966013214] [2022-04-15 08:31:43,373 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:31:43,373 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-15 08:31:43,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:31:43,373 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:43,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:43,424 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:31:43,424 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:43,424 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:31:43,425 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-15 08:31:43,425 INFO L87 Difference]: Start difference. First operand 238 states and 280 transitions. Second operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:44,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:44,816 INFO L93 Difference]: Finished difference Result 286 states and 341 transitions. [2022-04-15 08:31:44,816 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 08:31:44,816 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 85 [2022-04-15 08:31:44,816 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:31:44,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:44,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 97 transitions. [2022-04-15 08:31:44,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:44,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 97 transitions. [2022-04-15 08:31:44,818 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 97 transitions. [2022-04-15 08:31:44,915 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:44,920 INFO L225 Difference]: With dead ends: 286 [2022-04-15 08:31:44,920 INFO L226 Difference]: Without dead ends: 284 [2022-04-15 08:31:44,920 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 170 GetRequests, 158 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=38, Invalid=118, Unknown=0, NotChecked=0, Total=156 [2022-04-15 08:31:44,921 INFO L913 BasicCegarLoop]: 59 mSDtfsCounter, 9 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 299 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 248 SdHoareTripleChecker+Invalid, 308 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 299 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 08:31:44,921 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 248 Invalid, 308 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 299 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 08:31:44,922 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 284 states. [2022-04-15 08:31:45,190 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 284 to 268. [2022-04-15 08:31:45,190 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:31:45,191 INFO L82 GeneralOperation]: Start isEquivalent. First operand 284 states. Second operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-15 08:31:45,191 INFO L74 IsIncluded]: Start isIncluded. First operand 284 states. Second operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-15 08:31:45,192 INFO L87 Difference]: Start difference. First operand 284 states. Second operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-15 08:31:45,197 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:45,197 INFO L93 Difference]: Finished difference Result 284 states and 339 transitions. [2022-04-15 08:31:45,197 INFO L276 IsEmpty]: Start isEmpty. Operand 284 states and 339 transitions. [2022-04-15 08:31:45,197 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:45,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:45,198 INFO L74 IsIncluded]: Start isIncluded. First operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) Second operand 284 states. [2022-04-15 08:31:45,198 INFO L87 Difference]: Start difference. First operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) Second operand 284 states. [2022-04-15 08:31:45,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:31:45,202 INFO L93 Difference]: Finished difference Result 284 states and 339 transitions. [2022-04-15 08:31:45,202 INFO L276 IsEmpty]: Start isEmpty. Operand 284 states and 339 transitions. [2022-04-15 08:31:45,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:31:45,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:31:45,202 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:31:45,202 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:31:45,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 268 states, 171 states have (on average 1.1403508771929824) internal successors, (195), 178 states have internal predecessors, (195), 61 states have call successors, (61), 36 states have call predecessors, (61), 35 states have return successors, (58), 53 states have call predecessors, (58), 58 states have call successors, (58) [2022-04-15 08:31:45,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 268 states to 268 states and 314 transitions. [2022-04-15 08:31:45,207 INFO L78 Accepts]: Start accepts. Automaton has 268 states and 314 transitions. Word has length 85 [2022-04-15 08:31:45,207 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:31:45,207 INFO L478 AbstractCegarLoop]: Abstraction has 268 states and 314 transitions. [2022-04-15 08:31:45,207 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 08:31:45,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 268 states and 314 transitions. [2022-04-15 08:31:45,649 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:31:45,649 INFO L276 IsEmpty]: Start isEmpty. Operand 268 states and 314 transitions. [2022-04-15 08:31:45,651 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-15 08:31:45,651 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:31:45,651 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:31:45,685 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-15 08:31:45,885 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:45,886 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:31:45,886 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:31:45,886 INFO L85 PathProgramCache]: Analyzing trace with hash 148216665, now seen corresponding path program 9 times [2022-04-15 08:31:45,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:31:45,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [149147379] [2022-04-15 08:31:45,887 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:31:45,887 INFO L85 PathProgramCache]: Analyzing trace with hash 148216665, now seen corresponding path program 10 times [2022-04-15 08:31:45,887 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:31:45,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [408682591] [2022-04-15 08:31:45,887 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:31:45,887 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:31:45,894 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:31:45,894 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [146769407] [2022-04-15 08:31:45,894 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:31:45,894 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:31:45,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:31:45,895 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:31:45,912 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-15 08:31:45,941 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:31:45,942 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:31:45,942 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-15 08:31:45,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:31:45,953 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:32:33,231 INFO L272 TraceCheckUtils]: 0: Hoare triple {23185#true} call ULTIMATE.init(); {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {23185#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23185#true} {23185#true} #82#return; {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L272 TraceCheckUtils]: 4: Hoare triple {23185#true} call #t~ret7 := main(); {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L290 TraceCheckUtils]: 5: Hoare triple {23185#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L272 TraceCheckUtils]: 6: Hoare triple {23185#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L290 TraceCheckUtils]: 8: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L290 TraceCheckUtils]: 9: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,231 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23185#true} {23185#true} #64#return; {23185#true} is VALID [2022-04-15 08:32:33,232 INFO L272 TraceCheckUtils]: 11: Hoare triple {23185#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,232 INFO L290 TraceCheckUtils]: 12: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,232 INFO L290 TraceCheckUtils]: 13: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,232 INFO L290 TraceCheckUtils]: 14: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,232 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23185#true} {23185#true} #66#return; {23185#true} is VALID [2022-04-15 08:32:33,232 INFO L290 TraceCheckUtils]: 16: Hoare triple {23185#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,232 INFO L290 TraceCheckUtils]: 17: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,233 INFO L290 TraceCheckUtils]: 18: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 5);havoc #t~post6; {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,233 INFO L272 TraceCheckUtils]: 19: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,233 INFO L290 TraceCheckUtils]: 20: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,233 INFO L290 TraceCheckUtils]: 21: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,233 INFO L290 TraceCheckUtils]: 22: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,234 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23185#true} {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #68#return; {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,234 INFO L272 TraceCheckUtils]: 24: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,234 INFO L290 TraceCheckUtils]: 25: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,234 INFO L290 TraceCheckUtils]: 26: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,234 INFO L290 TraceCheckUtils]: 27: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,234 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {23185#true} {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #70#return; {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,234 INFO L272 TraceCheckUtils]: 29: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,235 INFO L290 TraceCheckUtils]: 30: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,235 INFO L290 TraceCheckUtils]: 31: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,235 INFO L290 TraceCheckUtils]: 32: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,235 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {23185#true} {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #72#return; {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,236 INFO L290 TraceCheckUtils]: 34: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(~a~0 != ~b~0); {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 08:32:33,236 INFO L290 TraceCheckUtils]: 35: Hoare triple {23238#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,237 INFO L290 TraceCheckUtils]: 36: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,237 INFO L290 TraceCheckUtils]: 37: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,237 INFO L272 TraceCheckUtils]: 38: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,237 INFO L290 TraceCheckUtils]: 39: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,237 INFO L290 TraceCheckUtils]: 40: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,237 INFO L290 TraceCheckUtils]: 41: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,238 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23185#true} {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #68#return; {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,238 INFO L272 TraceCheckUtils]: 43: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,238 INFO L290 TraceCheckUtils]: 44: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,238 INFO L290 TraceCheckUtils]: 45: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,238 INFO L290 TraceCheckUtils]: 46: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,238 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23185#true} {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #70#return; {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,239 INFO L272 TraceCheckUtils]: 48: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,239 INFO L290 TraceCheckUtils]: 49: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,239 INFO L290 TraceCheckUtils]: 50: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,239 INFO L290 TraceCheckUtils]: 51: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,239 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23185#true} {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} #72#return; {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,240 INFO L290 TraceCheckUtils]: 53: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} assume !!(~a~0 != ~b~0); {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} is VALID [2022-04-15 08:32:33,242 INFO L290 TraceCheckUtils]: 54: Hoare triple {23296#(and (= main_~r~0 0) (not (< main_~y~0 main_~a~0)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= main_~q~0 (* (- 1) main_~p~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,242 INFO L290 TraceCheckUtils]: 55: Hoare triple {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,243 INFO L290 TraceCheckUtils]: 56: Hoare triple {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} assume !!(#t~post6 < 5);havoc #t~post6; {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,243 INFO L272 TraceCheckUtils]: 57: Hoare triple {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,243 INFO L290 TraceCheckUtils]: 58: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,243 INFO L290 TraceCheckUtils]: 59: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,243 INFO L290 TraceCheckUtils]: 60: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,244 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {23185#true} {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} #68#return; {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,244 INFO L272 TraceCheckUtils]: 62: Hoare triple {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,244 INFO L290 TraceCheckUtils]: 63: Hoare triple {23185#true} ~cond := #in~cond; {23382#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:32:33,244 INFO L290 TraceCheckUtils]: 64: Hoare triple {23382#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:32:33,244 INFO L290 TraceCheckUtils]: 65: Hoare triple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:32:33,245 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} {23354#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (not (< main_~b~0 0)))} #70#return; {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,245 INFO L272 TraceCheckUtils]: 67: Hoare triple {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,246 INFO L290 TraceCheckUtils]: 68: Hoare triple {23185#true} ~cond := #in~cond; {23382#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:32:33,246 INFO L290 TraceCheckUtils]: 69: Hoare triple {23382#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:32:33,246 INFO L290 TraceCheckUtils]: 70: Hoare triple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:32:33,247 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} #72#return; {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,247 INFO L290 TraceCheckUtils]: 72: Hoare triple {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} assume !!(~a~0 != ~b~0); {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} is VALID [2022-04-15 08:32:33,251 INFO L290 TraceCheckUtils]: 73: Hoare triple {23393#(and (= (+ main_~s~0 main_~r~0) 0) (< (* main_~b~0 2) main_~y~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~a~0) (= main_~s~0 (+ (* (- 1) main_~s~0) (* (- 1) main_~r~0) 1)) (= main_~p~0 (* (- 2) main_~q~0)) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (< main_~b~0 0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-15 08:32:33,252 INFO L290 TraceCheckUtils]: 74: Hoare triple {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-15 08:32:33,252 INFO L290 TraceCheckUtils]: 75: Hoare triple {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} assume !!(#t~post6 < 5);havoc #t~post6; {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-15 08:32:33,253 INFO L272 TraceCheckUtils]: 76: Hoare triple {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:32:33,253 INFO L290 TraceCheckUtils]: 77: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:32:33,253 INFO L290 TraceCheckUtils]: 78: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:32:33,253 INFO L290 TraceCheckUtils]: 79: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:32:33,253 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {23185#true} {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} #68#return; {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-15 08:32:33,258 INFO L272 TraceCheckUtils]: 81: Hoare triple {23415#(and (= (mod (* main_~p~0 2) 3) 0) (= (+ (* main_~x~0 2) (* (- 1) main_~y~0)) (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) (* (- 1) main_~y~0))) (< main_~y~0 (* main_~x~0 2)) (not (< main_~y~0 main_~x~0)) (= (- 2) main_~r~0) (= main_~a~0 (+ (* main_~x~0 (+ (div (- main_~p~0) 3) main_~p~0)) main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23440#(exists ((v_main_~x~0_BEFORE_CALL_152 Int) (aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46 Int) (aux_div_v_main_~p~0_BEFORE_CALL_140_45 Int)) (and (< 0 v_main_~x~0_BEFORE_CALL_152) (< (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46) 3) (<= 1 |__VERIFIER_assert_#in~cond|) (= (+ (* 2 (* aux_div_v_main_~p~0_BEFORE_CALL_140_45 v_main_~x~0_BEFORE_CALL_152)) (* 2 v_main_~x~0_BEFORE_CALL_152) (* 3 (* v_main_~x~0_BEFORE_CALL_152 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))) 0) (<= 0 (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))))} is VALID [2022-04-15 08:32:33,259 INFO L290 TraceCheckUtils]: 82: Hoare triple {23440#(exists ((v_main_~x~0_BEFORE_CALL_152 Int) (aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46 Int) (aux_div_v_main_~p~0_BEFORE_CALL_140_45 Int)) (and (< 0 v_main_~x~0_BEFORE_CALL_152) (< (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46) 3) (<= 1 |__VERIFIER_assert_#in~cond|) (= (+ (* 2 (* aux_div_v_main_~p~0_BEFORE_CALL_140_45 v_main_~x~0_BEFORE_CALL_152)) (* 2 v_main_~x~0_BEFORE_CALL_152) (* 3 (* v_main_~x~0_BEFORE_CALL_152 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))) 0) (<= 0 (* 3 aux_div_aux_mod_v_main_~p~0_BEFORE_CALL_140_45_46))))} ~cond := #in~cond; {23444#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:32:33,259 INFO L290 TraceCheckUtils]: 83: Hoare triple {23444#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23186#false} is VALID [2022-04-15 08:32:33,259 INFO L290 TraceCheckUtils]: 84: Hoare triple {23186#false} assume !false; {23186#false} is VALID [2022-04-15 08:32:33,259 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 60 proven. 41 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-15 08:32:33,260 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:33:00,897 INFO L290 TraceCheckUtils]: 84: Hoare triple {23186#false} assume !false; {23186#false} is VALID [2022-04-15 08:33:00,897 INFO L290 TraceCheckUtils]: 83: Hoare triple {23444#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23186#false} is VALID [2022-04-15 08:33:00,898 INFO L290 TraceCheckUtils]: 82: Hoare triple {23457#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23444#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:33:00,898 INFO L272 TraceCheckUtils]: 81: Hoare triple {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23457#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:33:00,899 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {23185#true} {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:33:00,899 INFO L290 TraceCheckUtils]: 79: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:00,899 INFO L290 TraceCheckUtils]: 78: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:00,899 INFO L290 TraceCheckUtils]: 77: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:00,899 INFO L272 TraceCheckUtils]: 76: Hoare triple {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:00,899 INFO L290 TraceCheckUtils]: 75: Hoare triple {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:33:00,900 INFO L290 TraceCheckUtils]: 74: Hoare triple {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:33:01,060 INFO L290 TraceCheckUtils]: 73: Hoare triple {23486#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23461#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:33:01,061 INFO L290 TraceCheckUtils]: 72: Hoare triple {23486#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {23486#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:33:01,062 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} {23493#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #72#return; {23486#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 08:33:01,062 INFO L290 TraceCheckUtils]: 70: Hoare triple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:01,063 INFO L290 TraceCheckUtils]: 69: Hoare triple {23503#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:01,063 INFO L290 TraceCheckUtils]: 68: Hoare triple {23185#true} ~cond := #in~cond; {23503#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:33:01,063 INFO L272 TraceCheckUtils]: 67: Hoare triple {23493#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,065 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} {23185#true} #70#return; {23493#(or (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 08:33:01,065 INFO L290 TraceCheckUtils]: 65: Hoare triple {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:01,065 INFO L290 TraceCheckUtils]: 64: Hoare triple {23503#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23386#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 63: Hoare triple {23185#true} ~cond := #in~cond; {23503#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:33:01,066 INFO L272 TraceCheckUtils]: 62: Hoare triple {23185#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {23185#true} {23185#true} #68#return; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 60: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 59: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 58: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L272 TraceCheckUtils]: 57: Hoare triple {23185#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 56: Hoare triple {23185#true} assume !!(#t~post6 < 5);havoc #t~post6; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 55: Hoare triple {23185#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 54: Hoare triple {23185#true} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 53: Hoare triple {23185#true} assume !!(~a~0 != ~b~0); {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23185#true} {23185#true} #72#return; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 51: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,066 INFO L290 TraceCheckUtils]: 50: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 49: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L272 TraceCheckUtils]: 48: Hoare triple {23185#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23185#true} {23185#true} #70#return; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 46: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 45: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 44: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L272 TraceCheckUtils]: 43: Hoare triple {23185#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23185#true} {23185#true} #68#return; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 41: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 40: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 39: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L272 TraceCheckUtils]: 38: Hoare triple {23185#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 37: Hoare triple {23185#true} assume !!(#t~post6 < 5);havoc #t~post6; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 36: Hoare triple {23185#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 35: Hoare triple {23185#true} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 34: Hoare triple {23185#true} assume !!(~a~0 != ~b~0); {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {23185#true} {23185#true} #72#return; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 32: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,067 INFO L290 TraceCheckUtils]: 31: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 30: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L272 TraceCheckUtils]: 29: Hoare triple {23185#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {23185#true} {23185#true} #70#return; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 27: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 26: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 25: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L272 TraceCheckUtils]: 24: Hoare triple {23185#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23185#true} {23185#true} #68#return; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 22: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 21: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 20: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L272 TraceCheckUtils]: 19: Hoare triple {23185#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 18: Hoare triple {23185#true} assume !!(#t~post6 < 5);havoc #t~post6; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 17: Hoare triple {23185#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 16: Hoare triple {23185#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23185#true} {23185#true} #66#return; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 14: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 13: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,068 INFO L290 TraceCheckUtils]: 12: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L272 TraceCheckUtils]: 11: Hoare triple {23185#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23185#true} {23185#true} #64#return; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L290 TraceCheckUtils]: 8: Hoare triple {23185#true} assume !(0 == ~cond); {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L290 TraceCheckUtils]: 7: Hoare triple {23185#true} ~cond := #in~cond; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L272 TraceCheckUtils]: 6: Hoare triple {23185#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {23185#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L272 TraceCheckUtils]: 4: Hoare triple {23185#true} call #t~ret7 := main(); {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23185#true} {23185#true} #82#return; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {23185#true} assume true; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {23185#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {23185#true} call ULTIMATE.init(); {23185#true} is VALID [2022-04-15 08:33:01,069 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 78 proven. 8 refuted. 0 times theorem prover too weak. 151 trivial. 0 not checked. [2022-04-15 08:33:01,069 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:33:01,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [408682591] [2022-04-15 08:33:01,070 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:33:01,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [146769407] [2022-04-15 08:33:01,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [146769407] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:33:01,070 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:33:01,070 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 16 [2022-04-15 08:33:01,070 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:33:01,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [149147379] [2022-04-15 08:33:01,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [149147379] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:33:01,070 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:33:01,070 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 08:33:01,070 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [323696177] [2022-04-15 08:33:01,070 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:33:01,071 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 85 [2022-04-15 08:33:01,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:33:01,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 08:33:01,141 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-15 08:33:01,141 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 08:33:01,141 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:33:01,141 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 08:33:01,141 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:33:01,141 INFO L87 Difference]: Start difference. First operand 268 states and 314 transitions. Second operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 08:33:06,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:33:06,212 INFO L93 Difference]: Finished difference Result 297 states and 355 transitions. [2022-04-15 08:33:06,212 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 08:33:06,212 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 85 [2022-04-15 08:33:06,212 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:33:06,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 08:33:06,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 99 transitions. [2022-04-15 08:33:06,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 08:33:06,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 99 transitions. [2022-04-15 08:33:06,214 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 99 transitions. [2022-04-15 08:33:06,329 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:33:06,334 INFO L225 Difference]: With dead ends: 297 [2022-04-15 08:33:06,334 INFO L226 Difference]: Without dead ends: 295 [2022-04-15 08:33:06,334 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 172 GetRequests, 153 SyntacticMatches, 3 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-15 08:33:06,335 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 13 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 429 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 221 SdHoareTripleChecker+Invalid, 443 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 429 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 7 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-15 08:33:06,336 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 221 Invalid, 443 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 429 Invalid, 0 Unknown, 7 Unchecked, 2.5s Time] [2022-04-15 08:33:06,337 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 295 states. [2022-04-15 08:33:06,574 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 295 to 249. [2022-04-15 08:33:06,574 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:33:06,575 INFO L82 GeneralOperation]: Start isEquivalent. First operand 295 states. Second operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:33:06,575 INFO L74 IsIncluded]: Start isIncluded. First operand 295 states. Second operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:33:06,576 INFO L87 Difference]: Start difference. First operand 295 states. Second operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:33:06,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:33:06,580 INFO L93 Difference]: Finished difference Result 295 states and 353 transitions. [2022-04-15 08:33:06,580 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 353 transitions. [2022-04-15 08:33:06,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:33:06,582 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:33:06,582 INFO L74 IsIncluded]: Start isIncluded. First operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 295 states. [2022-04-15 08:33:06,582 INFO L87 Difference]: Start difference. First operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 295 states. [2022-04-15 08:33:06,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:33:06,588 INFO L93 Difference]: Finished difference Result 295 states and 353 transitions. [2022-04-15 08:33:06,588 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 353 transitions. [2022-04-15 08:33:06,588 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:33:06,588 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:33:06,588 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:33:06,588 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:33:06,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 158 states have (on average 1.1455696202531647) internal successors, (181), 165 states have internal predecessors, (181), 58 states have call successors, (58), 33 states have call predecessors, (58), 32 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:33:06,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 294 transitions. [2022-04-15 08:33:06,593 INFO L78 Accepts]: Start accepts. Automaton has 249 states and 294 transitions. Word has length 85 [2022-04-15 08:33:06,593 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:33:06,593 INFO L478 AbstractCegarLoop]: Abstraction has 249 states and 294 transitions. [2022-04-15 08:33:06,593 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.727272727272727) internal successors, (30), 10 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 08:33:06,593 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 249 states and 294 transitions. [2022-04-15 08:33:07,102 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:33:07,102 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 294 transitions. [2022-04-15 08:33:07,103 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-15 08:33:07,103 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:33:07,103 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:33:07,119 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-15 08:33:07,303 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:33:07,304 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:33:07,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:33:07,304 INFO L85 PathProgramCache]: Analyzing trace with hash 849816539, now seen corresponding path program 11 times [2022-04-15 08:33:07,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:33:07,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [901059329] [2022-04-15 08:33:07,305 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:33:07,305 INFO L85 PathProgramCache]: Analyzing trace with hash 849816539, now seen corresponding path program 12 times [2022-04-15 08:33:07,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:33:07,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1055090978] [2022-04-15 08:33:07,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:33:07,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:33:07,314 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:33:07,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1525677124] [2022-04-15 08:33:07,314 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:33:07,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:33:07,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:33:07,315 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:33:07,316 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-15 08:33:07,390 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 08:33:07,390 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:33:07,391 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-15 08:33:07,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:33:07,413 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:33:07,798 INFO L272 TraceCheckUtils]: 0: Hoare triple {25397#true} call ULTIMATE.init(); {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L290 TraceCheckUtils]: 1: Hoare triple {25397#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L290 TraceCheckUtils]: 2: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25397#true} {25397#true} #82#return; {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L272 TraceCheckUtils]: 4: Hoare triple {25397#true} call #t~ret7 := main(); {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L290 TraceCheckUtils]: 5: Hoare triple {25397#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L272 TraceCheckUtils]: 6: Hoare triple {25397#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L290 TraceCheckUtils]: 7: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,798 INFO L290 TraceCheckUtils]: 8: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L290 TraceCheckUtils]: 9: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25397#true} {25397#true} #64#return; {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L272 TraceCheckUtils]: 11: Hoare triple {25397#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L290 TraceCheckUtils]: 12: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L290 TraceCheckUtils]: 13: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L290 TraceCheckUtils]: 14: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {25397#true} {25397#true} #66#return; {25397#true} is VALID [2022-04-15 08:33:07,799 INFO L290 TraceCheckUtils]: 16: Hoare triple {25397#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,800 INFO L290 TraceCheckUtils]: 17: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,800 INFO L290 TraceCheckUtils]: 18: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,800 INFO L272 TraceCheckUtils]: 19: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,800 INFO L290 TraceCheckUtils]: 20: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,800 INFO L290 TraceCheckUtils]: 21: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,800 INFO L290 TraceCheckUtils]: 22: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,801 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,801 INFO L272 TraceCheckUtils]: 24: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,801 INFO L290 TraceCheckUtils]: 25: Hoare triple {25397#true} ~cond := #in~cond; {25478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:33:07,801 INFO L290 TraceCheckUtils]: 26: Hoare triple {25478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:07,801 INFO L290 TraceCheckUtils]: 27: Hoare triple {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:07,802 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,802 INFO L272 TraceCheckUtils]: 29: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,802 INFO L290 TraceCheckUtils]: 30: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,802 INFO L290 TraceCheckUtils]: 31: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,802 INFO L290 TraceCheckUtils]: 32: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,803 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,803 INFO L290 TraceCheckUtils]: 34: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,803 INFO L290 TraceCheckUtils]: 35: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,804 INFO L290 TraceCheckUtils]: 36: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,804 INFO L290 TraceCheckUtils]: 37: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,804 INFO L272 TraceCheckUtils]: 38: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,804 INFO L290 TraceCheckUtils]: 39: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,804 INFO L290 TraceCheckUtils]: 40: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,804 INFO L290 TraceCheckUtils]: 41: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,805 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,805 INFO L272 TraceCheckUtils]: 43: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,805 INFO L290 TraceCheckUtils]: 44: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,805 INFO L290 TraceCheckUtils]: 45: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,805 INFO L290 TraceCheckUtils]: 46: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,805 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,806 INFO L272 TraceCheckUtils]: 48: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,806 INFO L290 TraceCheckUtils]: 49: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,806 INFO L290 TraceCheckUtils]: 50: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,806 INFO L290 TraceCheckUtils]: 51: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,806 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,807 INFO L290 TraceCheckUtils]: 53: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,807 INFO L290 TraceCheckUtils]: 54: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,807 INFO L290 TraceCheckUtils]: 55: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 56: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,808 INFO L272 TraceCheckUtils]: 57: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 58: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 59: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 60: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,808 INFO L272 TraceCheckUtils]: 62: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 63: Hoare triple {25397#true} ~cond := #in~cond; {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 64: Hoare triple {25397#true} assume !(0 == ~cond); {25397#true} is VALID [2022-04-15 08:33:07,808 INFO L290 TraceCheckUtils]: 65: Hoare triple {25397#true} assume true; {25397#true} is VALID [2022-04-15 08:33:07,809 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {25397#true} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,809 INFO L272 TraceCheckUtils]: 67: Hoare triple {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,809 INFO L290 TraceCheckUtils]: 68: Hoare triple {25397#true} ~cond := #in~cond; {25478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:33:07,810 INFO L290 TraceCheckUtils]: 69: Hoare triple {25478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:07,810 INFO L290 TraceCheckUtils]: 70: Hoare triple {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:07,811 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} {25450#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {25618#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,811 INFO L290 TraceCheckUtils]: 72: Hoare triple {25618#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {25618#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:33:07,812 INFO L290 TraceCheckUtils]: 73: Hoare triple {25618#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} is VALID [2022-04-15 08:33:07,812 INFO L290 TraceCheckUtils]: 74: Hoare triple {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} is VALID [2022-04-15 08:33:07,812 INFO L290 TraceCheckUtils]: 75: Hoare triple {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} is VALID [2022-04-15 08:33:07,812 INFO L272 TraceCheckUtils]: 76: Hoare triple {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {25397#true} is VALID [2022-04-15 08:33:07,813 INFO L290 TraceCheckUtils]: 77: Hoare triple {25397#true} ~cond := #in~cond; {25478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:33:07,813 INFO L290 TraceCheckUtils]: 78: Hoare triple {25478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:07,813 INFO L290 TraceCheckUtils]: 79: Hoare triple {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:33:07,824 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {25482#(not (= |__VERIFIER_assert_#in~cond| 0))} {25625#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ main_~x~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~q~0 main_~x~0)))) (= main_~r~0 (* (- 1) main_~s~0)))} #68#return; {25647#(and (= (* main_~p~0 (* (- 1) main_~r~0)) (+ (* (+ (* (- 1) main_~p~0) 1) main_~r~0) 1)) (= main_~a~0 (+ (* (* (+ (* (- 1) main_~p~0) 1) main_~x~0) (- 1)) (* (- 1) (* main_~y~0 (* (- 1) main_~r~0))) main_~x~0)))} is VALID [2022-04-15 08:33:07,825 INFO L272 TraceCheckUtils]: 81: Hoare triple {25647#(and (= (* main_~p~0 (* (- 1) main_~r~0)) (+ (* (+ (* (- 1) main_~p~0) 1) main_~r~0) 1)) (= main_~a~0 (+ (* (* (+ (* (- 1) main_~p~0) 1) main_~x~0) (- 1)) (* (- 1) (* main_~y~0 (* (- 1) main_~r~0))) main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25651#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:33:07,825 INFO L290 TraceCheckUtils]: 82: Hoare triple {25651#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25655#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:33:07,826 INFO L290 TraceCheckUtils]: 83: Hoare triple {25655#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25398#false} is VALID [2022-04-15 08:33:07,826 INFO L290 TraceCheckUtils]: 84: Hoare triple {25398#false} assume !false; {25398#false} is VALID [2022-04-15 08:33:07,826 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 66 proven. 33 refuted. 0 times theorem prover too weak. 138 trivial. 0 not checked. [2022-04-15 08:33:07,826 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:34:45,218 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 08:34:53,517 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 08:35:07,918 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse5 (+ (* (- 1) c_main_~q~0) c_main_~p~0))) (let ((.cse0 (= c_main_~y~0 0)) (.cse4 (+ c_main_~b~0 (* (- 1) c_main_~q~0 c_main_~x~0))) (.cse1 (* .cse5 c_main_~x~0)) (.cse3 (+ (* (- 1) c_main_~b~0) c_main_~a~0))) (and (let ((.cse6 (div .cse4 c_main_~y~0))) (let ((.cse2 (+ c_main_~r~0 (* (- 1) .cse6)))) (or .cse0 (= (+ .cse1 (* .cse2 c_main_~y~0)) .cse3) (not (= (mod .cse4 c_main_~y~0) 0)) (not (= (+ (* c_main_~q~0 .cse2) 1) (* .cse5 .cse6)))))) (or (not .cse0) (not (= .cse4 0)) (let ((.cse8 (= c_main_~p~0 0)) (.cse7 (+ (* c_main_~q~0 c_main_~r~0) 1))) (and (or (not (= .cse7 0)) (forall ((main_~s~0 Int)) (= (+ (* (+ (* (- 1) c_main_~q~0) c_main_~p~0) c_main_~x~0) (* (+ (* (- 1) main_~s~0) c_main_~r~0) c_main_~y~0)) (+ (* (- 1) c_main_~b~0) c_main_~a~0))) (not .cse8)) (or .cse8 (not (= (mod .cse7 c_main_~p~0) 0)) (= (+ .cse1 (* (+ c_main_~r~0 (* (div .cse7 c_main_~p~0) (- 1))) c_main_~y~0)) .cse3)))))))) is different from true [2022-04-15 08:35:07,920 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:35:07,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1055090978] [2022-04-15 08:35:07,920 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:35:07,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1525677124] [2022-04-15 08:35:07,920 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1525677124] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 08:35:07,920 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 08:35:07,920 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-15 08:35:07,921 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:35:07,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [901059329] [2022-04-15 08:35:07,921 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [901059329] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:35:07,921 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:35:07,921 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 08:35:07,921 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1923579968] [2022-04-15 08:35:07,921 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:35:07,921 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) Word has length 85 [2022-04-15 08:35:07,921 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:35:07,922 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 08:35:07,965 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-15 08:35:07,965 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 08:35:07,965 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:35:07,966 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 08:35:07,966 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=143, Unknown=1, NotChecked=24, Total=210 [2022-04-15 08:35:07,966 INFO L87 Difference]: Start difference. First operand 249 states and 294 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 08:35:10,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:35:10,536 INFO L93 Difference]: Finished difference Result 315 states and 392 transitions. [2022-04-15 08:35:10,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 08:35:10,536 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) Word has length 85 [2022-04-15 08:35:10,536 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:35:10,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 08:35:10,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-15 08:35:10,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 08:35:10,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-15 08:35:10,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 110 transitions. [2022-04-15 08:35:10,662 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-15 08:35:10,667 INFO L225 Difference]: With dead ends: 315 [2022-04-15 08:35:10,667 INFO L226 Difference]: Without dead ends: 309 [2022-04-15 08:35:10,667 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 2.3s TimeCoverageRelationStatistics Valid=61, Invalid=214, Unknown=1, NotChecked=30, Total=306 [2022-04-15 08:35:10,668 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 26 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 388 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 198 SdHoareTripleChecker+Invalid, 415 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 388 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-15 08:35:10,668 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 198 Invalid, 415 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 388 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-15 08:35:10,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 309 states. [2022-04-15 08:35:10,969 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 309 to 265. [2022-04-15 08:35:10,969 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:35:10,970 INFO L82 GeneralOperation]: Start isEquivalent. First operand 309 states. Second operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-15 08:35:10,970 INFO L74 IsIncluded]: Start isIncluded. First operand 309 states. Second operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-15 08:35:10,970 INFO L87 Difference]: Start difference. First operand 309 states. Second operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-15 08:35:10,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:35:10,975 INFO L93 Difference]: Finished difference Result 309 states and 381 transitions. [2022-04-15 08:35:10,975 INFO L276 IsEmpty]: Start isEmpty. Operand 309 states and 381 transitions. [2022-04-15 08:35:10,975 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:35:10,975 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:35:10,976 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) Second operand 309 states. [2022-04-15 08:35:10,976 INFO L87 Difference]: Start difference. First operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) Second operand 309 states. [2022-04-15 08:35:10,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:35:10,980 INFO L93 Difference]: Finished difference Result 309 states and 381 transitions. [2022-04-15 08:35:10,980 INFO L276 IsEmpty]: Start isEmpty. Operand 309 states and 381 transitions. [2022-04-15 08:35:10,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:35:10,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:35:10,981 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:35:10,981 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:35:10,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 167 states have (on average 1.1437125748502994) internal successors, (191), 175 states have internal predecessors, (191), 63 states have call successors, (63), 35 states have call predecessors, (63), 34 states have return successors, (59), 54 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-15 08:35:10,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 313 transitions. [2022-04-15 08:35:10,986 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 313 transitions. Word has length 85 [2022-04-15 08:35:10,986 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:35:10,986 INFO L478 AbstractCegarLoop]: Abstraction has 265 states and 313 transitions. [2022-04-15 08:35:10,986 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 4 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 08:35:10,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 313 transitions. [2022-04-15 08:35:11,530 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 313 edges. 313 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:35:11,530 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 313 transitions. [2022-04-15 08:35:11,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-15 08:35:11,531 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:35:11,531 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:35:11,549 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-15 08:35:11,731 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-15 08:35:11,731 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:35:11,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:35:11,732 INFO L85 PathProgramCache]: Analyzing trace with hash -1358919972, now seen corresponding path program 13 times [2022-04-15 08:35:11,732 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:35:11,732 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1140986767] [2022-04-15 08:35:11,732 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:35:11,732 INFO L85 PathProgramCache]: Analyzing trace with hash -1358919972, now seen corresponding path program 14 times [2022-04-15 08:35:11,732 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:35:11,732 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1865359242] [2022-04-15 08:35:11,732 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:35:11,732 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:35:11,745 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:35:11,745 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1307517984] [2022-04-15 08:35:11,745 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:35:11,745 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:35:11,745 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:35:11,747 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:35:11,748 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-15 08:35:11,840 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:35:11,840 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:35:11,841 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-15 08:35:11,854 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:35:11,855 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:35:12,863 INFO L272 TraceCheckUtils]: 0: Hoare triple {27492#true} call ULTIMATE.init(); {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {27492#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27492#true} {27492#true} #82#return; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {27492#true} call #t~ret7 := main(); {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {27492#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L272 TraceCheckUtils]: 6: Hoare triple {27492#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27492#true} {27492#true} #64#return; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L272 TraceCheckUtils]: 11: Hoare triple {27492#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 12: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 13: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L290 TraceCheckUtils]: 14: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,864 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27492#true} {27492#true} #66#return; {27492#true} is VALID [2022-04-15 08:35:12,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {27492#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,865 INFO L290 TraceCheckUtils]: 17: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,865 INFO L272 TraceCheckUtils]: 19: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L290 TraceCheckUtils]: 21: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L290 TraceCheckUtils]: 22: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {27492#true} {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,866 INFO L272 TraceCheckUtils]: 24: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L290 TraceCheckUtils]: 25: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L290 TraceCheckUtils]: 26: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,866 INFO L290 TraceCheckUtils]: 27: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,867 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {27492#true} {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,867 INFO L272 TraceCheckUtils]: 29: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,867 INFO L290 TraceCheckUtils]: 30: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,867 INFO L290 TraceCheckUtils]: 31: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,867 INFO L290 TraceCheckUtils]: 32: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,868 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {27492#true} {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,868 INFO L290 TraceCheckUtils]: 34: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:35:12,869 INFO L290 TraceCheckUtils]: 35: Hoare triple {27545#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,869 INFO L290 TraceCheckUtils]: 36: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,869 INFO L290 TraceCheckUtils]: 37: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,869 INFO L272 TraceCheckUtils]: 38: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L290 TraceCheckUtils]: 39: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L290 TraceCheckUtils]: 41: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27492#true} {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #68#return; {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,870 INFO L272 TraceCheckUtils]: 43: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L290 TraceCheckUtils]: 44: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L290 TraceCheckUtils]: 45: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,870 INFO L290 TraceCheckUtils]: 46: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,871 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {27492#true} {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #70#return; {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,871 INFO L272 TraceCheckUtils]: 48: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,871 INFO L290 TraceCheckUtils]: 49: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,871 INFO L290 TraceCheckUtils]: 50: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,871 INFO L290 TraceCheckUtils]: 51: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,872 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27492#true} {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #72#return; {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,872 INFO L290 TraceCheckUtils]: 53: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~a~0 != ~b~0); {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,873 INFO L290 TraceCheckUtils]: 54: Hoare triple {27603#(and (= (+ main_~s~0 main_~r~0) 0) (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-15 08:35:12,874 INFO L290 TraceCheckUtils]: 55: Hoare triple {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-15 08:35:12,874 INFO L290 TraceCheckUtils]: 56: Hoare triple {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} assume !!(#t~post6 < 5);havoc #t~post6; {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-15 08:35:12,874 INFO L272 TraceCheckUtils]: 57: Hoare triple {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,874 INFO L290 TraceCheckUtils]: 58: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,874 INFO L290 TraceCheckUtils]: 59: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,874 INFO L290 TraceCheckUtils]: 60: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,875 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {27492#true} {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #68#return; {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-15 08:35:12,875 INFO L272 TraceCheckUtils]: 62: Hoare triple {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,875 INFO L290 TraceCheckUtils]: 63: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,875 INFO L290 TraceCheckUtils]: 64: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,875 INFO L290 TraceCheckUtils]: 65: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,876 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {27492#true} {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #70#return; {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-15 08:35:12,876 INFO L272 TraceCheckUtils]: 67: Hoare triple {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,876 INFO L290 TraceCheckUtils]: 68: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,876 INFO L290 TraceCheckUtils]: 69: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,876 INFO L290 TraceCheckUtils]: 70: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,877 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {27492#true} {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} #72#return; {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} is VALID [2022-04-15 08:35:12,877 INFO L290 TraceCheckUtils]: 72: Hoare triple {27661#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)))} assume !!(~a~0 != ~b~0); {27716#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-15 08:35:12,878 INFO L290 TraceCheckUtils]: 73: Hoare triple {27716#(and (= (* (- 2) main_~s~0) main_~r~0) (= main_~x~0 (+ main_~a~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (< 0 main_~a~0) (= main_~q~0 0) (= main_~p~0 (+ (* (- 2) main_~q~0) 1)) (not (= main_~b~0 main_~a~0)))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-15 08:35:12,879 INFO L290 TraceCheckUtils]: 74: Hoare triple {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-15 08:35:12,879 INFO L290 TraceCheckUtils]: 75: Hoare triple {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-15 08:35:12,879 INFO L272 TraceCheckUtils]: 76: Hoare triple {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,879 INFO L290 TraceCheckUtils]: 77: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,879 INFO L290 TraceCheckUtils]: 78: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,879 INFO L290 TraceCheckUtils]: 79: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,880 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {27492#true} {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} #68#return; {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-15 08:35:12,880 INFO L272 TraceCheckUtils]: 81: Hoare triple {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:12,880 INFO L290 TraceCheckUtils]: 82: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:12,880 INFO L290 TraceCheckUtils]: 83: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:12,880 INFO L290 TraceCheckUtils]: 84: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:12,881 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {27492#true} {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} #70#return; {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} is VALID [2022-04-15 08:35:12,881 INFO L272 TraceCheckUtils]: 86: Hoare triple {27720#(and (= (- 2) (+ (* (- 1) main_~s~0) 1)) (< main_~b~0 main_~y~0) (= main_~x~0 (+ (* (- 1) main_~b~0) (* main_~y~0 3))) (not (< main_~b~0 0)) (= (* (- 1) main_~q~0) 1) (not (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27760#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:35:12,882 INFO L290 TraceCheckUtils]: 87: Hoare triple {27760#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27764#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:35:12,882 INFO L290 TraceCheckUtils]: 88: Hoare triple {27764#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27493#false} is VALID [2022-04-15 08:35:12,882 INFO L290 TraceCheckUtils]: 89: Hoare triple {27493#false} assume !false; {27493#false} is VALID [2022-04-15 08:35:12,882 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 22 proven. 36 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-15 08:35:12,882 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:35:13,517 INFO L290 TraceCheckUtils]: 89: Hoare triple {27493#false} assume !false; {27493#false} is VALID [2022-04-15 08:35:13,517 INFO L290 TraceCheckUtils]: 88: Hoare triple {27764#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27493#false} is VALID [2022-04-15 08:35:13,517 INFO L290 TraceCheckUtils]: 87: Hoare triple {27760#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27764#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:35:13,518 INFO L272 TraceCheckUtils]: 86: Hoare triple {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27760#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:35:13,519 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {27492#true} {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:35:13,519 INFO L290 TraceCheckUtils]: 84: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:13,519 INFO L290 TraceCheckUtils]: 83: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:13,519 INFO L290 TraceCheckUtils]: 82: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:13,519 INFO L272 TraceCheckUtils]: 81: Hoare triple {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:13,519 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {27492#true} {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:35:13,519 INFO L290 TraceCheckUtils]: 79: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:13,519 INFO L290 TraceCheckUtils]: 78: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:13,519 INFO L290 TraceCheckUtils]: 77: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:13,520 INFO L272 TraceCheckUtils]: 76: Hoare triple {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:13,520 INFO L290 TraceCheckUtils]: 75: Hoare triple {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:35:13,520 INFO L290 TraceCheckUtils]: 74: Hoare triple {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:35:13,646 INFO L290 TraceCheckUtils]: 73: Hoare triple {27820#(or (< main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {27780#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:35:13,646 INFO L290 TraceCheckUtils]: 72: Hoare triple {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(~a~0 != ~b~0); {27820#(or (< main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:13,647 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {27492#true} {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #72#return; {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:13,647 INFO L290 TraceCheckUtils]: 70: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:13,647 INFO L290 TraceCheckUtils]: 69: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:13,647 INFO L290 TraceCheckUtils]: 68: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:13,647 INFO L272 TraceCheckUtils]: 67: Hoare triple {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:13,648 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {27492#true} {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #70#return; {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:13,648 INFO L290 TraceCheckUtils]: 65: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:13,648 INFO L290 TraceCheckUtils]: 64: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:13,648 INFO L290 TraceCheckUtils]: 63: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:13,648 INFO L272 TraceCheckUtils]: 62: Hoare triple {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:13,649 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {27492#true} {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #68#return; {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:13,649 INFO L290 TraceCheckUtils]: 60: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:13,649 INFO L290 TraceCheckUtils]: 59: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:13,649 INFO L290 TraceCheckUtils]: 58: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:13,649 INFO L272 TraceCheckUtils]: 57: Hoare triple {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:13,649 INFO L290 TraceCheckUtils]: 56: Hoare triple {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:13,650 INFO L290 TraceCheckUtils]: 55: Hoare triple {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:14,029 INFO L290 TraceCheckUtils]: 54: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27824#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-15 08:35:14,029 INFO L290 TraceCheckUtils]: 53: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} assume !!(~a~0 != ~b~0); {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,030 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27492#true} {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #72#return; {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,030 INFO L290 TraceCheckUtils]: 51: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,030 INFO L290 TraceCheckUtils]: 50: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,030 INFO L290 TraceCheckUtils]: 49: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,030 INFO L272 TraceCheckUtils]: 48: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,031 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {27492#true} {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #70#return; {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,031 INFO L290 TraceCheckUtils]: 46: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,031 INFO L290 TraceCheckUtils]: 45: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,031 INFO L290 TraceCheckUtils]: 44: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,031 INFO L272 TraceCheckUtils]: 43: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,032 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27492#true} {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #68#return; {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,032 INFO L290 TraceCheckUtils]: 41: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,032 INFO L290 TraceCheckUtils]: 40: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,032 INFO L290 TraceCheckUtils]: 39: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,032 INFO L272 TraceCheckUtils]: 38: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,032 INFO L290 TraceCheckUtils]: 37: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} assume !!(#t~post6 < 5);havoc #t~post6; {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,033 INFO L290 TraceCheckUtils]: 36: Hoare triple {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,841 INFO L290 TraceCheckUtils]: 35: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {27879#(or (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 2))) (< (* main_~b~0 2) main_~a~0) (not (< main_~b~0 main_~a~0)) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~b~0))} is VALID [2022-04-15 08:35:14,841 INFO L290 TraceCheckUtils]: 34: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} assume !!(~a~0 != ~b~0); {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,842 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {27492#true} {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #72#return; {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,842 INFO L290 TraceCheckUtils]: 32: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,842 INFO L290 TraceCheckUtils]: 31: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,842 INFO L272 TraceCheckUtils]: 29: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,843 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {27492#true} {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #70#return; {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,843 INFO L290 TraceCheckUtils]: 27: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,843 INFO L290 TraceCheckUtils]: 26: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,843 INFO L290 TraceCheckUtils]: 25: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,843 INFO L272 TraceCheckUtils]: 24: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,844 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {27492#true} {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #68#return; {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,844 INFO L290 TraceCheckUtils]: 22: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,844 INFO L290 TraceCheckUtils]: 21: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,844 INFO L290 TraceCheckUtils]: 20: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,844 INFO L272 TraceCheckUtils]: 19: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,845 INFO L290 TraceCheckUtils]: 17: Hoare triple {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,845 INFO L290 TraceCheckUtils]: 16: Hoare triple {27492#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27937#(or (< (* main_~b~0 3) main_~a~0) (= (+ (* (+ (* main_~q~0 3) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 3) (* (- 1) main_~r~0)))) (+ (* (- 1) main_~a~0) (* main_~b~0 3))) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0) (not (< (* main_~b~0 2) main_~a~0)))} is VALID [2022-04-15 08:35:14,845 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27492#true} {27492#true} #66#return; {27492#true} is VALID [2022-04-15 08:35:14,845 INFO L290 TraceCheckUtils]: 14: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,845 INFO L290 TraceCheckUtils]: 13: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L272 TraceCheckUtils]: 11: Hoare triple {27492#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27492#true} {27492#true} #64#return; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {27492#true} assume !(0 == ~cond); {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 7: Hoare triple {27492#true} ~cond := #in~cond; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L272 TraceCheckUtils]: 6: Hoare triple {27492#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 5: Hoare triple {27492#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L272 TraceCheckUtils]: 4: Hoare triple {27492#true} call #t~ret7 := main(); {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27492#true} {27492#true} #82#return; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {27492#true} assume true; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L290 TraceCheckUtils]: 1: Hoare triple {27492#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27492#true} is VALID [2022-04-15 08:35:14,846 INFO L272 TraceCheckUtils]: 0: Hoare triple {27492#true} call ULTIMATE.init(); {27492#true} is VALID [2022-04-15 08:35:14,847 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 22 proven. 36 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-15 08:35:14,847 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:35:14,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1865359242] [2022-04-15 08:35:14,847 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:35:14,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1307517984] [2022-04-15 08:35:14,847 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1307517984] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:35:14,847 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:35:14,847 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-15 08:35:14,847 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:35:14,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1140986767] [2022-04-15 08:35:14,847 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1140986767] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:35:14,847 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:35:14,847 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:35:14,847 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1480326897] [2022-04-15 08:35:14,847 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:35:14,848 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 90 [2022-04-15 08:35:14,848 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:35:14,848 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 08:35:14,902 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:35:14,902 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:35:14,902 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:35:14,903 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:35:14,903 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=134, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:35:14,903 INFO L87 Difference]: Start difference. First operand 265 states and 313 transitions. Second operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 08:35:16,555 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:35:16,556 INFO L93 Difference]: Finished difference Result 291 states and 354 transitions. [2022-04-15 08:35:16,556 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:35:16,556 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 90 [2022-04-15 08:35:16,556 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:35:16,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 08:35:16,557 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 97 transitions. [2022-04-15 08:35:16,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 08:35:16,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 97 transitions. [2022-04-15 08:35:16,558 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 97 transitions. [2022-04-15 08:35:16,657 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:35:16,662 INFO L225 Difference]: With dead ends: 291 [2022-04-15 08:35:16,662 INFO L226 Difference]: Without dead ends: 285 [2022-04-15 08:35:16,662 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 166 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-04-15 08:35:16,662 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 10 mSDsluCounter, 187 mSDsCounter, 0 mSdLazyCounter, 289 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 243 SdHoareTripleChecker+Invalid, 299 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 289 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 08:35:16,662 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 243 Invalid, 299 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 289 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 08:35:16,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 285 states. [2022-04-15 08:35:16,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 285 to 269. [2022-04-15 08:35:16,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:35:16,919 INFO L82 GeneralOperation]: Start isEquivalent. First operand 285 states. Second operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-15 08:35:16,919 INFO L74 IsIncluded]: Start isIncluded. First operand 285 states. Second operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-15 08:35:16,919 INFO L87 Difference]: Start difference. First operand 285 states. Second operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-15 08:35:16,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:35:16,923 INFO L93 Difference]: Finished difference Result 285 states and 342 transitions. [2022-04-15 08:35:16,923 INFO L276 IsEmpty]: Start isEmpty. Operand 285 states and 342 transitions. [2022-04-15 08:35:16,924 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:35:16,924 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:35:16,924 INFO L74 IsIncluded]: Start isIncluded. First operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) Second operand 285 states. [2022-04-15 08:35:16,924 INFO L87 Difference]: Start difference. First operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) Second operand 285 states. [2022-04-15 08:35:16,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:35:16,928 INFO L93 Difference]: Finished difference Result 285 states and 342 transitions. [2022-04-15 08:35:16,928 INFO L276 IsEmpty]: Start isEmpty. Operand 285 states and 342 transitions. [2022-04-15 08:35:16,928 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:35:16,928 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:35:16,929 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:35:16,929 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:35:16,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 269 states, 169 states have (on average 1.1420118343195267) internal successors, (193), 178 states have internal predecessors, (193), 65 states have call successors, (65), 35 states have call predecessors, (65), 34 states have return successors, (61), 55 states have call predecessors, (61), 61 states have call successors, (61) [2022-04-15 08:35:16,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 269 states to 269 states and 319 transitions. [2022-04-15 08:35:16,933 INFO L78 Accepts]: Start accepts. Automaton has 269 states and 319 transitions. Word has length 90 [2022-04-15 08:35:16,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:35:16,933 INFO L478 AbstractCegarLoop]: Abstraction has 269 states and 319 transitions. [2022-04-15 08:35:16,933 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 08:35:16,933 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 269 states and 319 transitions. [2022-04-15 08:35:17,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 319 edges. 319 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:35:17,522 INFO L276 IsEmpty]: Start isEmpty. Operand 269 states and 319 transitions. [2022-04-15 08:35:17,523 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-15 08:35:17,523 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:35:17,523 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:35:17,541 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-15 08:35:17,739 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable22 [2022-04-15 08:35:17,739 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:35:17,739 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:35:17,739 INFO L85 PathProgramCache]: Analyzing trace with hash -1753286758, now seen corresponding path program 15 times [2022-04-15 08:35:17,739 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:35:17,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [548155435] [2022-04-15 08:35:17,740 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:35:17,740 INFO L85 PathProgramCache]: Analyzing trace with hash -1753286758, now seen corresponding path program 16 times [2022-04-15 08:35:17,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:35:17,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1724739698] [2022-04-15 08:35:17,740 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:35:17,740 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:35:17,747 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:35:17,747 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1197826619] [2022-04-15 08:35:17,747 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:35:17,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:35:17,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:35:17,748 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:35:17,779 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-15 08:35:17,822 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:35:17,822 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:35:17,823 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-15 08:35:17,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:35:17,953 INFO L286 TraceCheckSpWp]: Computing forward predicates...